zoukankan      html  css  js  c++  java
  • 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目录下找对应的语言标签

    论坛对应的是: sourcelanguageforumlang_template.php
    'thread_favorite' => '收藏',

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

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

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

  • 相关阅读:
    什么是用户画像?具体公司体现在哪?什么作用呢?
    用户画像后台表设计
    【转载】Oracle Spatial中SDO_Geometry详细说明
    【转载】ArcGIS中的WKID
    MyBatis 判断条件为等于的时候,常量需要加 .toString()
    Oracle最大进程连接数问题
    JAVA WEB基础巩固之Json、Ajax
    Eclipse常用功能
    UML类图学习
    由uploadfive看servlet
  • 原文地址:https://www.cnblogs.com/wellsoho/p/3745148.html
Copyright © 2011-2022 走看看