Рейтинг:  5 / 5

Звезда активнаЗвезда активнаЗвезда активнаЗвезда активнаЗвезда активна
 

Что слетает в Joomla после апдейта и это нужно исправлять

Joomla — это система управления контентом, которая имеет своих поклонников, почитателей, пользователей и конечно команду, которая занимается её поддержкой и дальнейшей разработкой. Всё бы хорошо, если бы можно было создать что-то идеальное, чтобы работало, не ломалось и не нуждалось в обслуживании. В этой статье рассмотрим, что из внесённых изменений в работу Joomla слетает при её апдейте, и что приходится восстанавливать после каждого её апдейта.



BackUp сайта по любому случаю — это здоровая паранойя и сон младенца в промежутках между работой =)

Любую работу по вмешательству в любую работающую систему лучше всегда начинать с создание слепка того, что работает. Ибо работать оно не будет вечно — это во-первых, а во-вторых, кто из вас застраховал свой сайт на случай неудачного апдейта Joomla? Я не страховал, поэтому любой апдейт для меня повод сделать очередной бэкап сайта. ; )

Тем более, что делать его очень просто.

Накатывание апдейта Joomla на сарвер

Самое простое в Joomla — это накатить готовый апдейт. Тем более, что админка постоянно при входе напоминает о том, что вышла новая версия Joomla и что хорошо бы её обновить. А обновлять её действительно хорошо, так как разработчики не зря трудятся в поте лица, что-то улучшая в коде, в том числе закрывая найденные уязвимости, которые тоже случаются и которыми обязательно воспользуется какой-нибудь злодейский злодей, если ваша версия Joomla будет долго висеть без установленных обновлений, закрывающих вход в разные дырки всяким непрошеным гостям. Да и наверняка в новой версии будут присутствовать какие-нибудь приятные новые фишки или просто Joomla начнёт работать чуть быстрее и меньше нагружать сервер. Приятно же. =)

Что слетает в Joomla после апдейта и это нужно исправлять

Итак, апдейт Joomla успешно установлен. Теперь в порядке важности восстановления сайта после апдейта и приведение его в рабочее состояние, которое будет не хуже того, что было до апдейта.

1. Контекстная реклама Google

Для тех, кто делает сайт не просто потому что это круто или интересно, а чтобы он приносил доход, пожалуй самое важное — это в первую очередь восстановить выдачу контекстной рекламы.

Для этого требуется открыть файл /components/com_content/views/article/view.html.php и отредактировать выдачу рекламы в тексте статьи и в конце статьи:

2. Кнопки социальных сетей «Поделиться»

Чтобы не открывать файл /components/com_content/views/article/view.html.php дважды, сразу имеет смысл вставить в него и код вставки кнопок «Поделиться» в социальных сетях:

Код для пунктов 1 и 2: со 164-й строчки в файле view.html.php

		// читаем код рекламного блока в переменную $AdSense и $AdSense2
		$AdSense  = file_get_contents('./templates/protostar/includes/GaD-inarticle-up.php');
		$AdSense2 = file_get_contents('./templates/protostar/includes/GaD-inarticle-down.php');
		// читаем код вставки социальных кнопариков в переменные $YaShareUp и $YaShareDown
		$YaShareUp    = file_get_contents('./templates/protostar/includes/YaShare-up.php');
		$YaShareDown  = file_get_contents('./templates/protostar/includes/YaShare-down.php');

		// NOTE: The following code (usually) sets the text to contain the fulltext, but it is the
		// responsibility of the layout to check 'access-view' and only use "introtext" for guests
		if ($item->params->get('show_intro', '1') == '1')
		{
			$item->text = $YaShareUp . $item->introtext . $AdSense . '<br><br>' . $item->fulltext . $YaShareDown . $AdSense2; // выводим переменную $AdSense сразу после introtext и до fulltext
		}

3. Восстанавливаем выдачу заголовков статей тегом <H1>

Для того, чтобы пользователи сайта (и поисковики) понимали, что является заголовком статьи, имеет смысл сразу вернуть заголовкам статей обрамление тегом <H1>. Для этого нужно внести изменения в файл /components/com_content/views/article/tmpl/default.php, который находится в папке по соседству с теми, что мы только что правили выше.

Исправляем код в файле default.php (с 52-й строчки)

		<?php if ($params->get('show_title')) : ?>
			<h1 itemprop="headline">
				<?php echo $this->escape($this->item->title); ?>
			</h1>
		<?php endif; ?>

4. Восстанавливаем favicon

Далее, чтобы не сводить с ума поисковые машины тем, что у нас поменялся favicon сайта, сразу восстановим индексный файл шаблона сайта /templates/protostar/index.php, ну и до кучи, индексный файл index.php и файл логина login.php шаблона админки /administrator/templates/isis/ (если кто-то понял, насколько это удобно иметь собственную favicon админки при работе с сайтом):

Код для вставки в файл index.php шаблона Protostar сайта (со 134-й строчки)

	<!-- favicon -->
	<link rel="apple-touch-icon" sizes="180x180" href="/templates/favicon/apple-touch-icon.png">
	<link rel="icon" type="image/png" href="/templates/favicon/favicon-32x32.png" sizes="32x32">
	<link rel="icon" type="image/png" href="/templates/favicon/favicon-194x194.png" sizes="194x194">
	<link rel="icon" type="image/png" href="/templates/favicon/android-chrome-192x192.png" sizes="192x192">
	<link rel="icon" type="image/png" href="/templates/favicon/favicon-16x16.png" sizes="16x16">
	<link rel="manifest" href="/templates/favicon/manifest.json">
	<link rel="mask-icon" href="/templates/favicon/safari-pinned-tab.svg" color="#587bf5">
	<link rel="shortcut icon" href="/templates/favicon/favicon.ico">
	<meta name="apple-mobile-web-app-title" content="MoonBase">
	<meta name="application-name" content="MoonBase">
	<meta name="msapplication-TileColor" content="#587bf5">
	<meta name="msapplication-TileImage" content="/templates/favicon/mstile-144x144.png">
	<meta name="msapplication-config" content="/templates/favicon/browserconfig.xml">
	<meta name="theme-color" content="#587bf5">
	<!-- favicon -->

Код для вставки в файлов index.php и login.php шаблона isis админки (со 175-й и 108-й строчки соответственно)

<!-- favicon -->
<link rel="apple-touch-icon" sizes="180x180" href="/../administrator/templates/favicon/apple-touch-icon.png">
<link rel="icon" type="image/png" href="/../administrator/templates/favicon/favicon-32x32.png" sizes="32x32">
<link rel="icon" type="image/png" href="/../administrator/templates/favicon/favicon-194x194.png" sizes="194x194">
<link rel="icon" type="image/png" href="/../administrator/templates/favicon/android-chrome-192x192.png" sizes="192x192">
<link rel="icon" type="image/png" href="/../administrator/templates/favicon/favicon-16x16.png" sizes="16x16">
<link rel="manifest" href="/../administrator/templates/favicon/manifest.json">
<link rel="mask-icon" href="/../administrator/templates/favicon/safari-pinned-tab.svg" color="#aa44ee">
<link rel="shortcut icon" href="/../administrator/templates/favicon/favicon.ico">
<meta name="msapplication-TileColor" content="#aa44ee">
<meta name="msapplication-TileImage" content="../administrator/templates/favicon/mstile-144x144.png">
<meta name="msapplication-config" content="../administrator/templates/favicon/browserconfig.xml">
<meta name="theme-color" content="#aa44ee">
<!-- favicon -->

5. Убираем meta-тег name="generator"

Чтобы не открывать файл шаблона сайта дважды, сразу уберём meta-тег name="generator". Зачем он нам? ;)

Код для вставки в файл index.php шаблона Protostar сайта (в 16-ю строчку)

$this->setGenerator(null);

6. Вставка года начала проекта в копирайте сайта

И снова, чтобы не открывать файлы шаблонов сайта и админки дважды, лучше сразу вставить год начала проекта в копирайт сайта.

Код для правки в файл index.php шаблона Protostar сайта (231-я строчка) в шаблоне админки тоже где-то внизу файлов index.php и login.php

&copy; 2006—<?php echo date('Y'); ?> <?php echo $sitename; ?>

7. Вставляем код для объявлений уровня страницы Google AdSense

Для этого нужно скопировать код для объявлений уровня страницы в Google AdSense и прописать его в теге <head> файла шаблона index.php.

8. Стили шаблона Protostar

Изменение размера, семейства и цвета шрифта текста сайта

Вот не знаю, кому как, а для меня шрифт шаблона Protostar мелковат, сероват, да и семейство шрифтов какое-то слишком ретро. =)

Поэтому в файл /templates/protostar/css/template.css имеет внести некоторые изменения:

Строка 213:

font-family: Open Sans, sans-serif;

Строка 214:

font-size: 14px;

Строка 216

color: #000;

Подсветка активного подпункта Главного меню сайта на Joomla

В стандартном решении для меню сайта есть недоработки с подсветкой активного подпункта Главного меню сайта. Это решаемо и описано в статье:

Строка 7464

.navigation .nav-child li.active > a {background-color: #8888cc; color: #fff;}

Заключение

Это пока всё, что нужно накатить обратно и поправить в движке Joomla и файлах шаблонов и стилей после того, как сделан апдейт Joomla.

Статья будет дополняться по мере работы с наращиванием функционала сайта и модернизации шаблона.

Оставляйте свои комментарии ниже или на форуме в теме обсуждения этой статьи. ; )

Заберите ссылку на статью к себе, чтобы потом легко её найти ;)

Выберите, то, чем пользуетесь чаще всего:

Спасибо за внимание, оставайтесь на связи! Ниже ссылка на форум и обсуждение ; )

Log in to comment

Обсуждение этой статьи

ИНФОРМАЦИЯ: Вы оставите комментарий к этой статье как 'Гость'