Рубрика

CMS

Всего: 84 записи

Убрать или изменить мета-тег «Generator» в Joomla 1.5

Для того, чтобы убрать вот этот тег:

<meta name="generator" content="Joomla! 1.5 - Open Source Content Management" />

Вариант 1:
в файле libraries\joomla\document\html\renderer\head.php
закоментруйте строку 83:

$strHtml .= $tab.'<meta name="generator" content="'.$document->getGenerator().'" />'.$lnEnd;

или измените по примеру:

$strHtml .= $tab.'<meta name="generator" content="Konstantin Krylov" />'.$lnEnd;

Вариант 2:
в файле /libraries/joomla/document/document.php
изменить в функции

function getGenerator() {
   return $this->_generator;
}

на

function getGenerator() {
   //return $this->_generator;
   return "Konstantin Krylov";
}

Вариант 3 (самый нормальный):
в файле /libraries/joomla/document/document.php подправить (скорее всего 85 строка)

	var $_generator = 'Konstantin Krylov';

Создание модулей для Joomla 1.5

При необходимости использования в модуле собственного php-кода одним из вариантов может быть создание простейшего модуля, хотя вероятно существуют плагины, позволяющие добавлять php в материалы и модули основанные на выводе произвольного HTML.
Ниже приведен пример структуры файла mod_mymodule.xml, который позволяет установить и использовать написанный модуль. Создание таблиц в БД таким образом не организуется, сделать это будет нужно, например, при помощи phpMyAdmin. Деинсталяция также не организуется (очистка или удаление таблиц в БД, удаление файлов модуля). Полное описание структуры xml-файла можно найти на оффициальном сайте Joomla.

<?xml version="1.0" encoding="utf-8"?>
<install type="module" version="1.5.0">
<name>MyModule</name>
<author>Konstantin Krylov</author>
<creationDate>13.11.2009</creationDate>
<copyright>Copyright (C) Konstantin Krylov</copyright>
<license>http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL</license>
<authorEmail>[email protected]</authorEmail>
<authorUrl>http://krylov.org.ua/</authorUrl>
<version>1.0</version>
<description>Sample Module</description>
<files>
<filename module="mod_mymodule">mod_mymodule.php</filename>
</files>
</install>

Соотвественно в файле mod_mymodule.php должен находиться сам код. Например:

<?php
echo "test";
?>

Для установки через админ-панель при использовании способа загрузки архива с модулем необходимо упаковать эти 2 файла в mod_mymodule.zip, или же создать на сервере папку, в которой должны находиться эти файлы при установке из дирректории.

WordPress — как добавить свою статическую страницу

Если при добавлении страницы недостаточно просто разметки html, можно создать новый шаблон страницы, который будет содержать собственно саму страницу. Для этого нужно создать файл, например, sample_page.php, в начале которого добавить:

<?php
/*
Template Name: SamplePage
*/
?>
<?php get_header(); ?>

Далее ранее сформированный код.
В конце:

<?php get_footer(); ?>

Затем преместить этот файл в папку с текущим шаблоном, и при добавлении страницы из административной панели выбрать созданный шаблон, сам текст может быть пустым или что-то вроде &nbsp; (т.е. можно указать только заголовок).
Если сайдбар не подключается каким либо другим образом то можно показать его при помощи

<?php get_sidebar(); ?>

Выпадающее меню на css

html:

<ul id='hornav'>
   <li><a href='#null'>Меню 1</a></li>
   <li><a href='#null'>Меню 2</a>
      <ul>
         <li><a href='#null' target='_blank'>Меню 2.1</a></li>
         <li><a href='#null' target='_blank'>Меню 2.2</a></li>
      </ul>
   </li>
   <li><a href='#null'>Меню 3</a>
      <ul>
         <li><a href='#null'>Меню 3.1</a>
            <ul>
               <li><a href='#null'>Меню 3.1.1</a></li>
               <li><a href='#null'>Меню 3.1.2</a></li>
               <li><a href='#null'>Меню 3.1.3</a></li>
            </ul>
         </li>
         <li><a href='#null'>Меню 3.2</a>
            <ul>
               <li><a href='#null'>Меню 3.2.1</a></li>
               <li><a href='#null'>Меню 3.2.2</a></li>
               <li><a href='#null'>Меню 3.2.3</a></li>
            </ul>
         </li>
         <li><a href='#null'>Меню 3.3</a>
            <ul>
               <li><a href='#null'>Меню 3.3.1</a></li>
               <li><a href='#null'>Меню 3.3.2</a></li>
               <li><a href='#null'>Меню 3.3.3</a></li>
            </ul>
         </li>
      </ul>
   </li>
</ul>

css:

#hornav, #hornav ul {
	list-style: none;
	margin: 0;
	padding: 0;
	border: 1px solid #000;
	background: #515151;
	float: left;
	width: 100%;
}
#hornav li {
	float: left;
	position: relative;
	background: #515151;
	back\ground: none;
}
#hornav li ul {
	display: none;
	position: absolute;
	padding: 8px 0;
	width: 138px;
}
#hornav a {
	color: #fff;
	text-decoration: none;
	display: block;
	width: 120px;
	padding: 4px 10px;
}
#hornav a:hover {
	color: #fe572a;
	background: #ccc;
}
#hornav li:hover,
#hornav li.jshover {
	background: #333;
}
#hornav li li a {
	width: 118px;
	background: none;
}
#hornav li:hover ul,
#hornav li.jshover ul {
	display: block;
}
#hornav li:hover li ul,
#hornav li.jshover li ul {
	display: none;
	width: 138px;
	top: -9px;
	left: 113px;
}
#hornav li:hover li:hover ul,
#hornav li.jshover li.jshover ul {
	display: block;
}

javascript:

jsHover = function() {
   var hEls = document.getElementById('hornav').getElementsByTagName('LI');
   for (var i=0, len=hEls.length; i<len; i++) {
      hEls[i].onmouseover=function() { this.className+=' jshover'; }
      hEls[i].onmouseout=function() { this.className=this.className.replace(' jshover', ''); }
   }
}
if (window.attachEvent && navigator.userAgent.indexOf('Opera')==-1) window.attachEvent('onload', jsHover);

html — обтекание картинки текстом

В примере рассматривается выравнивание изображения по правому краю, все остальные варианты расположения создаются по аналогии.

<p>
<img src="/full/path/image.png" alt="описание" align="right" 
style="float: right; padding-left: 10px; padding-bottom: 10px;">
ваш текст
</p>

e107 time&date locales

Проблема после переноса на другой сервер. Заключается в том, что дата и время отображается на английском.
В файле e107_languages\Russian>Russian.php
вместо

setlocale(LC_ALL, 'ru_RU.cp1251');

добавить

setlocale (LC_ALL, array ('ru_RU.CP1251', 'rus_RUS.1251'));

E107 (перенос на другой сервер)

Применяется для случаев, когда Вы используйте cp1251 (при использовании utf-8 проблема отсутствует).
В файле Russian.php (по умолчанию находится в папке /e107_languages/Russian/) должно быть прописано:

define("CHARSET", "windows-1251");

В файле admin_log_class.php (по умолчанию находится в папке /e107_handlers/) после строки

$if (!defined('e107_INIT')) { exit; }

дописать следующее:

mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");