Cделаk Хак для ручного ввода Названия страницы при просмотре определенной категории.
Самому очень нужен, может и другим может пригодиться.
Для начала добавляем новое поле в свойства категории.
Создаем это поле в базе банных
ALTER TABLE `jos_vm_category` ADD `category_title` varchar(255) default NULL;
Затем открываем файл product.product_category_form.php
После
<tr>
<td width="21%" nowrap><div align="right"><?php echo $VM_LANG->_PHPSHOP_CATEGORY_FORM_NAME ?>:</div></td>
<td width="79%">
<input type="text" class="inputbox" name="category_name" size="60" value="<?php echo shopMakeHtmlSafe( $db->sf('category_name')) ?>" />
</td>
</tr>
Добавляем
<tr>
<td width="21%" nowrap><div align="right"><?php echo $VM_LANG->_PHPSHOP_CATEGORY_TITLE ?>:</div></td>
<td width="79%">
<input type="text" class="inputbox" name="category_title" size="80" value="<?php echo shopMakeHtmlSafe( $db->f('category_title')) ?>" />
</td>
</tr>
Потом открываем файл ps_product_category.php, в function add строку
$q = "INSERT into #__{vm}_category (vendor_id, category_name,";
меняем на
$q = "INSERT into #__{vm}_category (vendor_id, category_name, category_title,";
после
$q .= $d["category_name"] . "','";
добавляем
$q .= $d["category_title"] . "','";
в function update строку с $q .= "', list_order меняем на
$q .= "', list_order='" . $d["list_order"]."'";
$q .= ", category_title='" . $d["category_title"]."'";
Находим там же
function get_description($category_id) {
$db = new ps_DB;
$q = "SELECT category_id, category_description FROM #__{vm}_category ";
$q .= "WHERE category_id='$category_id' ";
$db->setQuery($q); $db->query();
$db->next_record();
return $db->f("category_description");
}
Добавляем после
function get_title($category_id) {
$db = new ps_DB;
$q = "SELECT category_id, category_title FROM #__{vm}_category ";
$q .= "WHERE category_id='$category_id' ";
$db->setQuery($q); $db->query();
$db->next_record();
return $db->f("category_title");
}
Открываем файл shop.browse.php, после
/**
* CATEGORY DESCRIPTION
*/
добавляем
$title = $ps_product_category->get_title($category_id);
if ($title!="") {
$mainframe->SetPageTitle( $title );
}
Теперь находим строку
$mainframe->setPageTitle( $db->f("category_name") );
и закоментируем ее.
Вроде бы все. Не забывайте о бекапе.