discuz 模板中如何使用方法和语言标签?

第一个问题:如何调用方法?

关于模板中eval的使用{eval php 语句}
比如:<!--{eval echo "Hello World!"}-->

工作中遇到一个小问题,discuz的手机模板中,需要切换收藏和取消收藏。

取消收藏,需要找到forum/viewthread.htm 、forum/viewthread_node.htm
模板,在viewthread_node模板中修改
取消收藏的 最低层代码
/source/include/spacecp/spacecp_favorite.php
方法是 $fav =
C::t(‘home_favorite‘)->fetch_by_id_idtype($id, $idtype, $_G[‘uid‘]);

要想在模板页面中应用的话,就需要通过eval来引用

<!--{eval $fav = C::t(‘home_favorite‘)->fetch_by_id_idtype($_G[tid],
‘tid‘, $_G[‘uid‘]);}-->    其中tid是帖子,如果是版块需要改成fid

模板viewthread_node需要替换的代码:
<!--{if
!$_G[setting][mobile][mobilesimpletype] && $post[‘first‘]}-->

<a
href="home.php?mod=spacecp&ac=favorite&type=thread&id={$_G[tid]}"
class="fav">{lang favorite}</a>
<!--{/if}-->

替换后的代码如下:
<!--{eval $fav =
C::t(‘home_favorite‘)->fetch_by_id_idtype($_G[tid], ‘tid‘,
$_G[‘uid‘]);}-->
<!--{if $fav[‘favid‘]}-->
<a
href="home.php?mod=spacecp&ac=favorite&op=delete&favid={eval echo
$fav[‘favid‘]}" class="fav">{echo m_lang(delete_favorite)}</a>

<!--{else}-->
<a
href="home.php?mod=spacecp&ac=favorite&type=thread&id={$_G[tid]}"
class="fav">{lang favorite}</a>
<!--{/if}-->

第二个问题:discuz语言标签怎么使用和调取?
要是引用手机标签,需要到mobile目录下找对应的语言标签

论坛对应的是: source\language\forum\lang_template.php
‘thread_favorite‘
=> ‘收藏‘,

家园对应的是:source/language/home/lang_template.php
‘favorite‘ => ‘收藏‘,

手机对应的是:source/language/mobile/lang_template.php
‘favorite‘ =>
‘收藏‘,
‘favorite_delete‘ => ‘取消收藏‘,

关于多语言包如何使用,需要再研究。

discuz 模板中如何使用方法和语言标签?,布布扣,bubuko.com

时间: 2024-10-05 22:32:37

discuz 模板中如何使用方法和语言标签?的相关文章

thinkphp 5 count()方法在控制器,模板中的使用方法

thinkphp中关于count()方法的使用: 控制器中:echo count($arr)模板中:{$arr | count}模板中if判断语句中 <if condition="count($arr)">.....</if> 在模板中的if语句里的condition 进行大小判断 eq:等于 neq:不等于 lt:小于 gt:大于 原文地址:https://www.cnblogs.com/tine/p/8669370.html

Flask08 包含(include)、继承(extends)、宏???、模板中变量的来源

1 包含 直接把另一个文件的内容,复制粘贴过来 {% include "模板路径" %} 注意:模板都是放在 templates 这个文件夹下面的,可以在里面新建文件夹来进行分离:    例如:{% include "include/header.html" %} <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"

Ember模板中的操作指向

模板中的链接操作指向有三个地方,该模板对应的控制器和路由以及视图,默认是先跳转到控制器,如果控制器里没有定义模板中动作的方法,就去该模板对应的路由里找,如果还没找到,就去父级路由找,直到顶级路由,如果都没有找到则会报错,当然也可以改变默认方式,通过target让该动作跳转到其他目标,比如该模板对应的视图中,比如: <button {{action "select" post target="view"}}></button> App.Post

C语言中常用计时方法总结

转自:http://blog.csdn.net/fz_ywj/article/details/8109368 C语言中常用计时方法总结 1. time() 头文件:time.h 函数原型:time_t time(time_t * timer) 功能:返回以格林尼治时间(GMT)为标准,从1970年1月1日00:00:00到现在的此时此刻所经过的秒数. 用time()函数结合其他函数(如:localtime.gmtime.asctime.ctime)可以获得当前系统时间或是标准时间. 用difft

织梦dede模板中广告的去除方法?

织梦)dede模板中广告的去除方法1.我们先删除头部的广告,找到templetsdefault下的head.htm文件,打开后找到<div>{dede:myad name=’innerTopBanner1′/}</div><div>{dede:myad name=’innerTopBanner2′/}</div>删除保存,在返回找到index.htm文件下同样的代码删除保存即可,这样在主页和内容也头部的广告都被删除了dede模板中广告的去除方法 2.下面再删

salt jinja模板中变量使用pillar的几种方法

先转载下jinja模板中使用变量的方法,后文主要讲解pillar的变量使用方法 一.jinja模版的使用方法: 1.file状态使用template参数 - template:jinja 2.模版文件里面变量使用{{名称}},例如{{PORT}} 变量使用Grains:{{ grains['fqdn_ip4'] }} 变量使用执行模块:{{ salt['network.hw_addr']('eth0') }} 变量使用Pillar:{{ pillar['apache']['PORT'] }} 3

thinkphp模板中使用函数的方法

1.执行函数并输出返回值:格式:{:function(-)} 例如,输出U函数的返回值: {:U('User/insert')} 编译后的PHP代码是 <?php echo U('User/insert');?> 2.执行函数但不输出 : 格式:{~function(-)} 例如,调用say_hello函数: {~say_hello('ThinkPHP')} 编译后的PHP代码是: <?php say_hello('ThinkPHP');?> thinkphp模板中使用函数的方法

discuz 使模板中的函数不解析 正常使用

<!--{if $_GET['zcdw']=="baxi"}--><!--{eval $duiwuxinxi = "巴西队";}--><!--{elseif $_GET['zcdw']=="deguo"}--><!--{eval $duiwuxinxi = "德国队";}--><!--{elseif $_GET['zcdw']=="agenting"}-

DEDECMS模板中dede标签使用php和if判断语句的方法

先来看看下面这个标签{dede:field.tong_gg php=yes}if(@me==""||empty(@me))@me="<p>无</p>";{/dede:field.tong_gg}注释:@me:就是当前字段的值,你可以在if中给其赋值,然后判断结束后它的值就变成你赋的值,打印出来下面来说说具体的方法:方法一:用个if判断语句,判断一个字段是否有东西,有就输出1,没有则就出2,下面是的代码加载内容页模板中{dede:field.a