Альтернатива для table.tpl.php - PullRequest
1 голос
/ 24 декабря 2011

Используя ubercart marketplace, я не хочу, чтобы пользователи обновляли свои опубликованные продукты.В представлении пользователя / идентификатора / продажи ubercart отображает 2 ссылки: одну для просмотра продукта и одну для редактирования продукта.Я хотел удалить вторую ссылку, когда продукт находится в опубликованном состоянии (то есть для продажи). Я написал table.tpl.php, который позаботится об этом.

<?php
 $args=arg();
 if (count($args)==3 && $args[0]="user" && $args[2]=="selling"){
  for($i=0;$i<count($rows);$i++){
  if (strcasecmp($rows[$i][4]['data'],"For Sale")==0){
    $pos=strpos($rows[$i][1]['data'],"</a><a");
    $rows[$i][1]['data']=substr($rows[$i][1]['data'],0,$pos)."</a>";
  }
  }
 }
 $output=theme_table($header, $rows, $attributes = array(), $caption = NULL);
 echo $output;
?>

Есть ли способ сделать то же самое программно из модуля, либо

  1. , откорректировав данные до того, как они попадут в представление с каким-то крючком.
  2. делаю то же самое, что я делаю с table.tpl.php, но из модуля, чтобы мне не пришлось устанавливать этот файл table.tpl.php на другую тему (если он изменился)
...