Новости Joomla

Перевод и публикация интервью с Joomla евангелистом на греческом портале Joomla

Перевод и публикация интервью на греческом портале Joomla 🇬🇷

Утро, просматриваешь входящие письма и изучаешь новости и внезапно обнаруживаешь, что инициатива, которую ты начал, подхватывается другими людьми. 🎉

Недавно я взял интервью у Билла (Василиса) Коциаса - руководителя студии, читающего лекции в университете и популяризатора Joomla в Греции. Это интервью из журнала NorrNext, в оригинале на английском, теперь доступно на греческом языке и опубликовано на портале joomla.gr. 🎉

До чего же приятно… 😇😊 Работа замечена и с ней посчитали необходимым ознакомить аудиторию страны, в которой Билл читает лекции. И это солнечная Греция - страна, страна, с которой Россию многое связывает. 🇬🇷🇷🇺🕊

Смотрю на греческий алфавит и тут же рисуются картины белоснежных зданий в окружении винограда и амфор, красивых женщин в сандалиях и мужественных воинов, охраняющих покой полисов, в которых ученые мужи работают над трудами, позже вошедшими в века. Красиво! 😇Но вернемся к интервью.

Из него вы узнаете, что в Греции доля Joomla среди CMS занимает порядка 30-40%. По моему мнению это - самый высокий показатель во всем мире. Также чтение лекций о Joomla в университетах позволит привести новых пользователей и к тому же молодое поколение. Ну и огромное кол-во сертификтатов Билла на стене (смотрим фото в статье) свидетельствует о том, что Joomla может применяться как профессиональный инструмент.

🌐 Оригинальное интервью (на английском)
🇬🇷 Интервью на греческом портале (joomla.gr)

Что насчет перевода на русский? Увы, времени всего 24 часа в сутках. Я продолжаю готовить новые интервью. Возможно, после завершения выпуска журнала, рассмотрю перевод некоторых интервью на русский. Но я об этом не говорил. 😊 В блоге @eugenius_blog публикую анонсы интересных событий из мира Joomla, интервью, уроки и полезные советы, а также делюсь мыслями:, связанными с разработкой и веб-дизайном.

Обработка HTTP ответа в Joomla 6+. Изменения по сравнению с Joomla 3 - Joomla 5

👩‍💻 Обработка HTTP ответа в Joomla 6+. Изменения по сравнению с Joomla 3 - Joomla 5.В Joomla для выполнения внешних запросов из PHP к сторонним API используется класс Joomla\Http\Http напрямую или же Joomla\Http\HttpFactory, который возвращает для работы преднастроенный по умолчанию класс Http. О работе с HTTP-запросами подробно рассказывалось в статье 2021 года Создание внешних запросов с использованием HttpFactory (Joomla). Некоторые изменения касаются работы с ответами на запросы. Например, наш запрос:
use Joomla\Http\HttpFactory;$http = (new HttpFactory)->getHttp($options, ['curl', 'stream']);$response = $http->get('https://any-url.ru/api/any/endpoint');
Раньше можно было получить код ответа или тело ответа как свойство $response - $response->code или $response->body. Однако, Joomla, начиная с Joomla 4 во многом переходит на стандарты PSR. В частности для работы с HTTP-ответами - на PSR-7. Также хорошая статья на Хабре о PSR-7: PSR-7 в примерах.
Прямое обращение к свойствам code, headers, body объявлено устаревшим в Joomla 6.0.0 и обещают удалить в Joomla 7.0.0.
Вместо этого нужно работать с HTTP-ответом по стандартам PSR-7. Код ответа.Было $response->code. Стало $response->getStatusCode().Заголовки ответа.Было $response->headers. Стало $response->getHeaders().Тело ответа.Было $response->body. Стало (string)$response->getContents().В тело ответа теперь приходит не строка, а поток - объект класса Laminas\Diactoros\Stream. Поэтому его нужно привести к строке (если это json, к примеру): (string)$response->getContents(). Чаще всего в коде Joomla встречается именно такой вариант. Однако, есть и вариант с перемещением указателя чтения на начало потока:
// Получили ответ в виде потока$stream = $response->getBody();// "перемотали" на начало$stream->rewind();// Получили строковый ответ$json = $stream->getContents();
В итоге результат одинаковый.@joomlafeed#joomla #разработка #php

0 Пользователей и 1 Гость просматривают эту тему.
  • 4 Ответов
  • 4527 Просмотров
*

tysson

  • Захожу иногда
  • 263
  • 2 / 0
Убрать h1 из лого сайта
« : 29.07.2010, 15:07:18 »
Народ!

Помогите убрать тег h1 из лого сайта, а то я к своему ужасу у себя на сайте обнаружил два тега h1. fixIEPNG($E('h1.logo a'));

вот индекс PHP. или нужен другой файл?

<?php
/**
 * @copyright   Copyright (C) 2005 - 2010 Open Source Matters. All rights reserved.
 * @license      GNU/GPL, see LICENSE.php
 * Joomla! is free software. This version may have been modified pursuant
 * to the GNU General Public License, and as distributed it includes or
 * is derivative of works licensed under the GNU General Public License or
 * other free or open source software licenses.
 * See COPYRIGHT.php for copyright notices and details.
 */

// no direct access
defined( '_JEXEC' ) or die( 'Restricted access' );

include_once (dirname(__FILE__).DS.'/ja_vars.php');

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>">

<head>
<jdoc:include type="head" />
<?php JHTML::_('behavior.mootools'); ?>

<link rel="stylesheet" href="<?php echo $tmpTools->baseurl(); ?>templates/system/css/system.css" type="text/css" />
<link rel="stylesheet" href="<?php echo $tmpTools->baseurl(); ?>templates/system/css/general.css" type="text/css" />
<link rel="stylesheet" href="<?php echo $tmpTools->templateurl(); ?>/css/template.css" type="text/css" />

<script language="javascript" type="text/javascript" src="<?php echo $tmpTools->templateurl(); ?>/js/ja.script.js"></script>

<?php if ($tmpTools->getParam('rightCollapsible')): ?>
<script language="javascript" type="text/javascript">
var rightCollapseDefault='<?php echo $tmpTools->getParam('rightCollapseDefault'); ?>';
var excludeModules='<?php echo $tmpTools->getParam('excludeModules'); ?>';
</script>
<script language="javascript" type="text/javascript" src="<?php echo $tmpTools->templateurl(); ?>/js/ja.rightcol.js"></script>
<?php endif; ?>

<?php  if($this->direction == 'rtl') : ?>
<link rel="stylesheet" href="<?php echo $tmpTools->templateurl(); ?>/css/template_rtl.css" type="text/css" />
<?php else : ?>
<link rel="stylesheet" href="<?php echo $tmpTools->templateurl(); ?>/css/menu.css" type="text/css" />
<?php endif; ?>

<?php if ($this->countModules('hornav')): ?>
<?php if ($tmpTools->getParam('horNavType') == 'css'): ?>
<link rel="stylesheet" href="<?php echo $tmpTools->templateurl(); ?>/css/ja-sosdmenu.css" type="text/css" />
<script language="javascript" type="text/javascript" src="<?php echo $tmpTools->templateurl(); ?>/js/ja.cssmenu.js"></script>
<?php else: ?>
<link rel="stylesheet" href="<?php echo $tmpTools->templateurl(); ?>/css/ja-sosdmenu.css" type="text/css" />
<script language="javascript" type="text/javascript" src="<?php echo $tmpTools->templateurl(); ?>/js/ja.moomenu.js"></script>
<?php endif; ?>
<?php endif; ?>

<?php if ($tmpTools->getParam('theme_header') && $tmpTools->getParam('theme_header')!='-1') : ?>
<link rel="stylesheet" href="<?php echo $tmpTools->templateurl(); ?>/styles/header/<?php echo $tmpTools->getParam('theme_header'); ?>/style.css" type="text/css" />
<?php endif; ?>
<?php if ($tmpTools->getParam('theme_background') && $tmpTools->getParam('theme_background')!='-1') : ?>
<link rel="stylesheet" href="<?php echo $tmpTools->templateurl(); ?>/styles/background/<?php echo $tmpTools->getParam('theme_background'); ?>/style.css" type="text/css" />
<?php endif; ?>
<?php if ($tmpTools->getParam('theme_elements') && $tmpTools->getParam('theme_elements')!='-1') : ?>
<link rel="stylesheet" href="<?php echo $tmpTools->templateurl(); ?>/styles/elements/<?php echo $tmpTools->getParam('theme_elements'); ?>/style.css" type="text/css" />
<?php endif; ?>

<!--[if IE 7.0]>
<style type="text/css">
.clearfix {display: inline-block;}
</style>
<![endif]-->
<?php if ($tmpTools->isIE6()): ?>
<!--[if lte IE 6]>
<script type="text/javascript">
var siteurl = '<?php echo $tmpTools->baseurl();?>';

window.addEvent ('load', makeTransBG);
function makeTransBG() {
   fixIEPNG($E('.ja-headermask'), '', '', 1);
   fixIEPNG($E('h1.logo a'));
   fixIEPNG($$('img'));
   fixIEPNG ($$('#ja-mainnav ul.menu li ul'), '', 'scale', 0, 2);
}
</script>
<style type="text/css">
.ja-headermask, h1.logo a, #ja-cssmenu li ul { background-position: -1000px; }
#ja-cssmenu li ul li, #ja-cssmenu li a { background:transparent url(<?php echo $tmpTools->templateurl(); ?>/images/blank.png) no-repeat right;}
.clearfix {height: 1%;}
</style>
<![endif]-->
<?php endif; ?>

<style type="text/css">
#ja-header,#ja-mainnav,#ja-container,#ja-botsl,#ja-footer {width: <?php echo $tmpWidth; ?>;margin: 0 auto;}
#ja-wrapper {min-width: <?php echo $tmpWrapMin; ?>;}
</style>
</head>

<body id="bd" class="fs<?php echo $tmpTools->getParam(JA_TOOL_FONT);?> <?php echo $tmpTools->browser();?>" >
<a name="Top" id="Top"></a>
<ul class="accessibility">
   <li><a href="#ja-content" title="<?php echo JText::_("Skip to content");?>"><?php echo JText::_("Skip to content");?></a></li>
   <li><a href="#ja-mainnav" title="<?php echo JText::_("Skip to main navigation");?>"><?php echo JText::_("Skip to main navigation");?></a></li>
   <li><a href="#ja-col1" title="<?php echo JText::_("Skip to 1st column");?>"><?php echo JText::_("Skip to 1st column");?></a></li>
   <li><a href="#ja-col2" title="<?php echo JText::_("Skip to 2nd column");?>"><?php echo JText::_("Skip to 2nd column");?></a></li>
</ul>

<div id="ja-wrapper">

<!-- BEGIN: HEADER -->
<div id="ja-headerwrap">
   <div id="ja-header" class="clearfix" style="background: url(<?php echo $tmpTools->templateurl(); ?>/images/header/<?php echo $tmpTools->getRandomImage(dirname(__FILE__).DS.'images/header'); ?>) no-repeat top <?php if($this->direction == 'rtl') echo 'left'; else echo 'right';?>;">

   <div class="ja-headermask">&nbsp;</div>

   <?php
      $siteName = $tmpTools->sitename();
      if ($tmpTools->getParam('logoType')=='image'): ?>
      <h1 class="logo">
         <a href="index.php" title="<?php echo $siteName; ?>"><span><?php echo $siteName; ?></span></a>
      </h1>
   <?php else:
      $logoText = (trim($tmpTools->getParam('logoText'))=='')? $config->sitename : $tmpTools->getParam('logoText');
      $sloganText = (trim($tmpTools->getParam('sloganText'))=='')? JText::_('SITE SLOGAN') : $tmpTools->getParam('sloganText');   ?>
      <h1 class="logo-text">
         <a href="index.php" title="<?php echo $siteName; ?>"><span><?php echo $logoText; ?></span></a>
      </h1>
      <p class="site-slogan"><?php echo $sloganText;?></p>
   <?php endif; ?>

   <?php $tmpTools->genToolMenu(JA_TOOL_FONT, 'png'); ?>

   <?php if($this->countModules('user4')) : ?>
      <div id="ja-search">
         <jdoc:include type="modules" name="user4" />
      </div>
   <?php endif; ?>

   </div>
</div>
<!-- END: HEADER -->

<!-- BEGIN: MAIN NAVIGATION -->
<?php if ($this->countModules('hornav')): ?>
<div id="ja-mainnavwrap">
   <div id="ja-mainnav" class="clearfix">
   <jdoc:include type="modules" name="hornav" />
   </div>
</div>
<?php endif; ?>
<!-- END: MAIN NAVIGATION -->

<div id="ja-containerwrap<?php echo $divid; ?>">
<div id="ja-containerwrap2">
   <div id="ja-container">
   <div id="ja-container2" class="clearfix">

      <div id="ja-mainbody<?php echo $divid; ?>" class="clearfix">

      <!-- BEGIN: CONTENT -->
      <div id="ja-contentwrap">
      <div id="ja-content">

         <jdoc:include type="message" />

         <?php if(!$tmpTools->isFrontPage()) : ?>
         <div id="ja-pathway">
            <jdoc:include type="module" name="breadcrumbs" />
         </div>
         <?php endif ; ?>

         <jdoc:include type="component" />

         <?php if($this->countModules('banner')) : ?>
         <div id="ja-banner">
            <jdoc:include type="modules" name="banner" />
         </div>
         <?php endif; ?>

      </div>
      </div>
      <!-- END: CONTENT -->

      <?php if ($this->countModules('left')): ?>
      <!-- BEGIN: LEFT COLUMN -->
      <div id="ja-col1">
         <jdoc:include type="modules" name="left" style="xhtml" />
      </div><br />
      <!-- END: LEFT COLUMN -->
      <?php endif; ?>
      <noindex>
      </div>

      <?php if ($this->countModules('right')): ?>
      <!-- BEGIN: RIGHT COLUMN -->
      <div id="ja-col2">
         <jdoc:include type="modules" name="right" style="jarounded" />
      </div><br />
      <!-- END: RIGHT COLUMN -->
      <?php endif; ?>
      
   </div>
   </div>
</div>
</div>

<?php
$spotlight = array ('user1','user2','top','user5');
$botsl = $tmpTools->calSpotlight ($spotlight,99,22);
if( $botsl ) :
?>
<!-- BEGIN: BOTTOM SPOTLIGHT -->
<div id="ja-botslwrap">
   <div id="ja-botsl" class="clearfix">

     <?php if( $this->countModules('user1') ): ?>
     <div class="ja-box<?php echo $botsl['user1']['class']; ?>" style="width: <?php echo $botsl['user1']['width']; ?>;">
         <jdoc:include type="modules" name="user1" style="xhtml" />
     </div>
     <?php endif; ?>

     <?php if( $this->countModules('user2') ): ?>
     <div class="ja-box<?php echo $botsl['user2']['class']; ?>" style="width: <?php echo $botsl['user2']['width']; ?>;">
         <jdoc:include type="modules" name="user2" style="xhtml" />
     </div>
     <?php endif; ?>

     <?php if( $this->countModules('top') ): ?>
     <div class="ja-box<?php echo $botsl['top']['class']; ?>" style="width: <?php echo $botsl['top']['width']; ?>;">
         <jdoc:include type="modules" name="top" style="xhtml" />
     </div>
     <?php endif; ?>

     <?php if( $this->countModules('user5') ): ?>
     <div class="ja-box<?php echo $botsl['user5']['class']; ?>" style="width: <?php echo $botsl['user5']['width']; ?>;">
         <jdoc:include type="modules" name="user5" style="xhtml" />
     </div>
     <?php endif; ?>

   </div>
</div>
<!-- END: BOTTOM SPOTLIGHT -->
<?php endif; ?>

<!-- BEGIN: FOOTER -->
<div id="ja-footerwrap">
<div id="ja-footer" class="clearfix">

   <div id="ja-footnav">
      <jdoc:include type="modules" name="user3" />
   </div>

   <div class="copyright">
      <jdoc:include type="modules" name="footer" />
   </div>

   <div class="ja-cert">
      <jdoc:include type="modules" name="syndicate" />
    <a href="http://jigsaw.w3.org/css-validator/check/referer" target="_blank" title="<?php echo JText::_("CSS Validity");?>" style="text-decoration: none;">
      <img src="<?php echo $tmpTools->templateurl(); ?>/images/but-css.gif" border="none" alt="<?php echo JText::_("CSS Validity");?>" />
      </a>
      <a href="http://validator.w3.org/check/referer" target="_blank" title="<?php echo JText::_("XHTML Validity");?>" style="text-decoration: none;">
      <img src="<?php echo $tmpTools->templateurl(); ?>/images/but-xhtml10.gif" border="none" alt="<?php echo JText::_("XHTML Validity");?>" />
      </a>
   </div>

   <br />
</div>
</div>
<!-- END: FOOTER -->

</div>

<jdoc:include type="modules" name="debug" />

</body>

</html>
*

Dron79

  • Захожу иногда
  • 321
  • 37 / 0
  • Век живи - век учись!
Re: Убрать h1 из лого сайта
« Ответ #1 : 29.07.2010, 15:21:09 »
 строки
Код: css
 .ja-headermask, h1.logo a, #ja-cssmenu li ul { background-position: -1000px; }
и
Код: php
<h1 class="logo">
         <a href="index.php" title="<?php echo $siteName; ?>"><span><?php echo $siteName; ?></span></a>
      </h1>
замени на:
Код: css
.ja-headermask, h2.logo a, #ja-cssmenu li ul { background-position: -1000px; }
и
 
Код: php
<h2 class="logo">
         <a href="index.php" title="<?php echo $siteName; ?>"><span><?php echo $siteName; ?></span></a>
      </h2>
кроме того в файлах стилей найди все вхождения  h1.logo и замени их на h2.logo
это наиболее быстрый но не лучший способ
кодинг на php.
*

tysson

  • Захожу иногда
  • 263
  • 2 / 0
Re: Убрать h1 из лого сайта
« Ответ #2 : 29.07.2010, 16:52:53 »
благодарю! а чем он не лучший?
*

Dron79

  • Захожу иногда
  • 321
  • 37 / 0
  • Век живи - век учись!
Re: Убрать h1 из лого сайта
« Ответ #3 : 29.07.2010, 17:07:57 »
в плане SEO.
каждая страничка должна быть оптимизирована под конкретный запрос.
содержимое тегов <h1><h2><h3> должно соответствовать заточке странички под запрос.
Иными словами у вас текст страницы разбавляется ненужными ключевыми словами (название сайта), которых в тексте статьи может не быт совсем.
кодинг на php.
*

tysson

  • Захожу иногда
  • 263
  • 2 / 0
Re: Убрать h1 из лого сайта
« Ответ #4 : 29.07.2010, 17:10:11 »
ну в плане SEO, мне это картины не испортит. а вот то, что было два h1, это грубый косяк, и я офигел, что его не увидел сразу. Благодарю!

тем более я его сделаю h4, а такие заголовки мало значимы.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Чем лучше всего делать резервные копии сайта?

Автор 7Azimuth

Ответов: 115
Просмотров: 58977
Последний ответ 29.11.2023, 14:41:12
от sivers
Joomla 1.5 как убрать кнопку редактировать материант с сайта

Автор andriy465

Ответов: 5
Просмотров: 4015
Последний ответ 12.11.2023, 23:37:03
от all_zer
Не могу распаковать jpa архив сайта Akeeba backup. ajax error

Автор smadkz

Ответов: 4
Просмотров: 1908
Последний ответ 26.12.2020, 15:15:15
от stendapuss
Версия сайта для слабовидящих

Автор nikos

Ответов: 22
Просмотров: 44408
Последний ответ 27.11.2020, 11:04:18
от chernobyl
Поиск статьи по url сайта в админке Joomla 1.5

Автор Tema

Ответов: 5
Просмотров: 2194
Последний ответ 14.08.2020, 07:16:44
от rsn