Мой блог в транслитерации

Главные вкладки

Аватар пользователя Balu88 Balu88 2 марта 2011 в 17:43

Остальные весёлые приключения с Author Pane - надо было сделать в профиле меню, дабы убрать табы на материалы пользователя.
Тут необходимо пояснение о том, что если делать вывод материалов в профиле через vews, то вставить в простое меню потом не получается - только в таб, так как необходимо использовать при вставке знак %, а обычное меню его не понимает.
Решено было вывести на php, модернизировав под это дело Author Pane (а именно файл .tpl)
Вывести ссылку "видео пользователя", например, если данные формируются через вьюсы, дело довольно плёвое:

<?php 
      
      
echo "<a href=/user/$account->uid/video/> Моё видео </a>";
      
      
?>

(/user/%/video/ - путь к странице вьюса)
Настоящий гемор начался как раз тогда, когда потребовалось вывести "мой блог". Нужный код отыскался в интернете довольно быстро:

<?php /*
$uid = arg(1);
$account = user_load(array('uid' => $uid));
print '<strong><a href="/blogs/'.$account->name.'"/ title="Блог '.$account->name.'"/>Блог '.$account->name.'</a></strong>'; */
?>

но, так как на сайте есть русские имена, их вместо $account->name и подставляло, Ссылка получалась битой. В принципе, поменяв name на uid, можно добиться искомой ссылки, но тогда они уже не будет такой, как на всём остальном сайте, использующем человекопонятные УРЛ, посредством token и pathauto (которые транслитировали все урлы), подружиться с которыми мне не удалось по причине дубовости в php.
На выручку пришла стандартная в таких случаях смекалка, и выдала следующее решение: так как в блоге и в профиле пользователя используется [user-raw], надо банально вырезать его и подставить в мой УРЛ, что и было проделано, посредством
<?php$_SERVER['REQUEST_URI']; и substr?>

<?php 
$uid 
arg(1);
$account user_load(array('uid' => $uid));
$ваша переменная1=$_SERVER['REQUEST_URI']; //строка тырит УРЛ
$ваша переменная2=substr ($ваша переменная17); //от переменной 1 отнимается 7 символов
print '<strong><a href="/blog/'.$ваша переменная2.'"/ title="Блог '.$account->name.'"/>Блог '.$account->name.'</a></strong>'
?>      
<?php ?>

Комментарии