Перейти к содержанию
Форум поддержки пользователей VamShop

Рекомендуемые сообщения

В product.php есть кнопка


function getDetailsButton($id, $name) {
global $PHP_SELF;

return '<a href="'.vam_href_link(FILENAME_PRODUCT_INFO, vam_product_link($array['products_id'], $array['products_name'])).$id.'">'.vam_image_button('button_details.gif', TEXT_DETAILS.$name.TEXT_NOW).'</a>';
}
[/code]

как переделать ссылку чтобы  использовались короткие url-ы если в админке уст. checkbox и текущее решение есле checkbox unchecked?

Ссылка на сообщение
Поделиться на другие сайты

Вот в коде используется vam_product_link, а это значит, что если в Админке - Настройки - Мета-тэги включена опция Использовать короткие url, тогда в адрес автоматически будет подставляться название товара.

Посмотри, что делает функция в /inc/vam_product_link.inc.php

Ссылка на сообщение
Поделиться на другие сайты

У меня при исп коротких url на кнопке подробнее url="http://torgyem.kiev.ua/product_info.php/info/p_.html1218" http://torgyem.kiev.ua

Ссылка на сообщение
Поделиться на другие сайты

и еще делал скрипт для заполнения seo-url v 1.47

функция перевода из русского на транслит мб у когото есть или как исправить мою на локалке норм работала на сервак кинул какието глюки с кодировками (

function translate($str){
$str = str_replace(' ', '-', $str);
$res = "";
for ($i=0; $i<strlen($str); $i++){
switch ($str[$i]){
case 'а' : {
$res .= 'a';
break;
}
case 'б' : {
$res .= 'b';
break;
}
case 'в' : {
$res .= 'v';
break;
}
case 'г' : {
$res .= 'g';
break;
}
case 'д' : {
$res .= 'd';
break;
}
case 'е' : {
$res .= 'e';
break;
}
case 'ж' : {
$res .= 'j';
break;
}
case 'з' : {
$res .= 'z';
break;
}
case 'к' : {
$res .= 'k';
break;
}
case 'л' : {
$res .= 'l';
break;
}
case 'м' : {
$res .= 'm';
break;
}
case 'н' : {
$res .= 'n';
break;
}
case 'о' : {
$res .= 'o';
break;
}
case 'п' : {
$res .= 'p';
break;
}
case 'р' : {
$res .= 'r';
break;
}
case 'с' : {
$res .= 's';
break;
}
case 'т' : {
$res .= 't';
break;
}
case 'у' : {
$res .= 'y';
break;
}
case 'ф' : {
$res .= 'ph';
break;
}
case 'х' : {
$res .= 'h';
break;
}
case 'ц' : {
$res .= 'c';
break;
}
case 'ш' : {
$res .= 'sh';
break;
}
case 'ч' : {
$res .= 'ch';
break;
}
case 'щ' : {
$res .= 'shc';
break;
}
case 'й' : {
$res .= 'j';
break;
}
case 'ъ' : {
break;
}
case 'ы' : {
$res .= 'u';
break;
}
case 'э' : {
$res .= 'e';
break;
}
case 'ё' : {
$res .= 'e';
break;
}
  case 'и' : {
$res .= 'i';
break;
}
case 'я' : {
$res .= 'ya';
break;
}
case 'ь' : {
break;
}
case 'ю' : {
$res .= 'yu';
break;
}

case 'А' : {
$res .= 'A';
break;
}
case 'Б' : {
$res .= 'B';
break;
}
case 'В' : {
$res .= 'V';
break;
}
case 'Г' : {
$res .= 'G';
break;
}
case 'Ч' : {
$res .= 'Ch';
break;
}
case 'Д' : {
$res .= 'D';
break;
}
case 'Е' : {
$res .= 'E';
break;
}
case 'Ж' : {
$res .= 'J';
break;
}
case 'З' : {
$res .= 'Z';
break;
}
case 'К' : {
$res .= 'K';
break;
}
case 'И' : {
$res .= 'I';
break;
}
case 'Л' : {
$res .= 'L';
break;
}
case 'М' : {
$res .= 'M';
break;
}
case 'Н' : {
$res .= 'N';
break;
}
case 'О' : {
$res .= 'O';
break;
}
case 'П' : {
$res .= 'P';
break;
}
case 'Р' : {
$res .= 'R';
break;
}
case 'С' : {
$res .= 'S';
break;
}
case 'Т' : {
$res .= 'T';
break;
}
case 'У' : {
$res .= 'Y';
break;
}
case 'Ф' : {
$res .= 'Ph';
break;
}
case 'Х' : {
$res .= 'H';
break;
}
case 'Ц' : {
$res .= 'C';
break;
}
case 'Ш' : {
$res .= 'Sh';
break;
}
case 'Щ' : {
$res .= 'Shc';
break;
}
case 'Й' : {
$res .= 'j';
break;
}
case 'Ъ' : {
break;
}
case 'Ы' : {
$res .= 'U';
break;
}
case 'Э' : {
$res .= 'E';
break;
}
case 'Ё' : {
$res .= 'E';
break;
}
case 'Я' : {
$res .= 'Ya';
break;
}
case 'Ъ' : {
break;
}
case 'Ю' : {
$res .= 'Yu';
break;
}
default :
$res .= $str[$i];
}
}

return $res;
}[/code]

Ссылка на сообщение
Поделиться на другие сайты

уже нашел ее но всеже как ее использовать в своем скрипте который никак не связан с vamshop просто запускается для изменения бд если запускаю просто скрипт с одной функцией vamsclean("рвыларыо")  то работает норм а когда беру данные с бд (имя категории) выводятся некоторые символы кириллицы и остальное '-'  :-\

вызываю как http://torgyem.kiev.ua/файл.php

вот к примеру скрипт мб кому понадобится  :)

<?php
  $dbserver = 'localhost';
  $dbuser = '';
  $dbpassword = ''
$db = '';

function translate($name) {
$replace_param='/[^a-zA-Zа-яА-Я0-9]/';
$cyrillic = array("ж", "ё", "й","ю", "ь","ч", "щ", "ц","у","к","е","н","г","ш", "з","х","ъ","ф","ы","в","а","п","р","о","л","д","э","я","с","м","и","т","б","Ё","Й","Ю","Ч","Ь","Щ","Ц","У","К","Е","Н","Г","Ш","З","Х","Ъ","Ф","Ы","В","А","П","Р","О","Л","Д","Ж","Э","Я","С","М","И","Т","Б");
$translit = array("zh","yo","i","yu","","ch","sh","c","u","k","e","n","g","sh","z","h","",  "f",  "y",  "v",  "a",  "p",  "r",  "o",  "l",  "d",  "ye", "ya", "s",  "m",  "i",  "t",  "b",  "yo", "I",  "YU", "CH", "",  "SH", "C",  "U",  "K",  "E",  "N",  "G",  "SH", "Z",  "H",  "",  "F",  "Y",  "V",  "A",  "P",  "R",  "O",  "L",  "D",  "Zh", "Ye", "Ya", "S",  "M",  "I",  "T",  "B");
$name = str_replace($cyrillic, $translit, $name);   
  $name = preg_replace($replace_param, '-', $name);

return $name;
}

function InitConnection(){
global $dbserver, $dbuser, $dbpassword, $db;

mysql_connect($dbserver, $dbuser, $dbpassword);
mysql_select_db($db);
}

function hasParentCategory($category_id){
$categories = mysql_query("SELECT * FROM categories WHERE categories_id = '".$category_id."'");
$res = mysql_fetch_array($categories, MYSQL_ASSOC);

$hasParent = true;
if ($res['parent_id'] == 0){
$hasParent = false;
}

return $hasParent;
}

function getParentCategoryId($category_id){
$categories = mysql_query("SELECT * FROM categories WHERE categories_id = '".$category_id."'");
$res = mysql_fetch_array($categories, MYSQL_ASSOC);
$category_parent = $res['parent_id'];

return $category_parent;
}

function getCategoryId($product_id){
$categories = mysql_query("SELECT * FROM products_to_categories WHERE products_id = '".$product_id."'");
$res = mysql_fetch_array($categories, MYSQL_ASSOC);
$category_id = $res['categories_id'];

return $category_id;
}

function getProductCategoryName($category_id){
$res = mysql_fetch_array(mysql_query("SELECT * FROM categories_description AS c_desc WHERE c_desc.categories_id = '".$category_id."'"), MYSQL_ASSOC);
$category_name = $res['categories_name'];

return $category_name;
}

InitConnection();
$products = mysql_query('SELECT * FROM products AS p LEFT JOIN products_description AS p_desc ON (p.products_id = p_desc.products_id)');
while ($products_row = mysql_fetch_array($products, MYSQL_ASSOC)) {
$root = "";
$product_id = $products_row['products_id'];
$category_id = getCategoryId($product_id);
$root = translate(getProductCategoryName($category_id)).'/'.$root;
while (hasParentCategory($category_id)){
$category_id = getParentCategoryId($category_id);
$root = translate(getProductCategoryName($category_id)).'/'.$root;
};

$products_row['products_page_url'] = $products_row['products_name'].'.html';

$root .= translate($products_row['products_page_url']);
echo 'root: '.$root.'<br/>';

mysql_query("UPDATE products AS p SET p.products_page_url = '".$root."' WHERE p.products_id = '".$products_row['products_id']."'");
}
?>[/code]

Ссылка на сообщение
Поделиться на другие сайты

thanks но независимо от того какая функция пашет норм на серваке,  а если берем даные для перекодирования с бд то глюки с кодировкой...

в чем может быть проблема?0o

Ссылка на сообщение
Поделиться на другие сайты
×
×
  • Создать...