返回列表 发帖
查看: 164|回复: 1

[求助] 关于前端钩子 按钮显示的问题 大佬们帮我看看 哪个地方有有问题

17

主题

47

回帖

77

积分

渐入佳境

贡献
1 点
金币
5 个
QQ
发表于 2024-9-8 00:35:24 | 显示全部楼层 |阅读模式
关于前端钩子 按钮显示的问题 大佬们帮我看看 哪个地方有问题

最终想显示的是
发帖框顶部 发帖框中部 发帖框底部 还有 帖子和列表页的  快速回复区域显示

xml文件里面的代码
  1. <item id="hooks">
  2.     <item id="post_top">
  3.         <item id="qier_thread_top"><![CDATA[qier_thread_post_top]]></item>
  4.     </item>
  5.     <item id="post_middle">
  6.         <item id="qier_thread_middle"><![CDATA[qier_thread_post_middle]]></item>
  7.     </item>
  8.     <item id="post_bottom">
  9.         <item id="qier_thread_button"><![CDATA[qier_thread_post_button]]></item>
  10.     </item>
  11.     <item id="viewthread_fastpost_content">
  12.         <item id="qier_thread_viewthread_fastpost_content"><![CDATA[qier_thread_viewthread_fastpost_content]]></item>
  13.     </item>
  14.     <item id="forumdisplay_postbutton_bottom">
  15.         <item id="qier_thread_forumdisplay_postbutton_bottom"><![CDATA[qier_thread_forumdisplay_postbutton_bottom]]></item>
  16.     </item>
  17. </item>
复制代码
class.php里面的代码
  1. <?php
  2. if(!defined('IN_DISCUZ')) {
  3.     exit('Access Denied');
  4. }

  5. class plugin_qier_thread {
  6.     public function post_top() {
  7.         if (!$this->is_plugin_enabled()) return '';
  8.         return $this->qier_thread_button('post_top');
  9.     }

  10.     public function post_middle() {
  11.         if (!$this->is_plugin_enabled()) return '';
  12.         return $this->qier_thread_button('post_middle');
  13.     }

  14.     public function post_bottom() {
  15.         if (!$this->is_plugin_enabled()) return '';
  16.         return $this->qier_thread_button('post_bottom');
  17.     }

  18.     public function viewthread_fastpost_content() {
  19.         if (!$this->is_plugin_enabled()) return '';
  20.         global $_G;
  21.         if($_G['cache']['plugin']['qier_thread']['show_in_fastpost']) {
  22.             return $this->_get_button_html();
  23.         }
  24.         return '';
  25.     }

  26.     public function global_header() {
  27.         if (!$this->is_plugin_enabled()) return;
  28.         global $_G;
  29.         $button_position = $this->get_button_position();
  30.         $button_text = $_G['cache']['plugin']['qier_thread']['custom_button_text'] ?: lang('plugin/qier_thread', 'qier_thread_generate_article');
  31.         
  32.         // 只在发帖页面显示按钮
  33.         if(CURSCRIPT == 'forum' && (CURMODULE == 'post' || CURMODULE == 'viewthread')) {
  34.             include template('qier_thread:qier_thread_post');
  35.         }
  36.     }

  37.     public function forumdisplay_postbutton_bottom() {
  38.         if (!$this->is_plugin_enabled()) return '';
  39.         global $_G;
  40.         if($_G['cache']['plugin']['qier_thread']['show_in_fastpost']) {
  41.             return $this->_get_button_html();
  42.         }
  43.         return '';
  44.     }

  45.     private function qier_thread_button($position) {
  46.         global $_G;
  47.         
  48.         $enable = $_G['cache']['plugin']['qier_thread']['enable'];
  49.         $button_position = $_G['cache']['plugin']['qier_thread']['button_position'];
  50.         
  51.         if (!$enable) {
  52.             return '';
  53.         }
  54.         
  55.         $position_map = [
  56.             'post_top' => '1',
  57.             'post_middle' => '2',
  58.             'post_bottom' => '3'
  59.         ];
  60.         
  61.         if ($button_position !== $position_map[$position]) {
  62.             return '';
  63.         }
  64.         
  65.         return $this->get_button_html();
  66.     }

  67.     private function _get_button_html() {
  68.         global $_G;
  69.         $button_text = $_G['cache']['plugin']['qier_thread']['custom_button_text'] ?: '这是个按钮';
  70.         include template('qier_thread:button');
  71.         return $return;
  72.     }

  73.     private function get_button_html() {
  74.         $css_url = 'source/plugin/qier_thread/static/css/style.css';
  75.         $js_url = 'source/plugin/qier_thread/static/js/qier_thread.js';
  76.         
  77.         $output = '<link rel="stylesheet" type="text/css" href="' . $css_url . '" />';
  78.         $output .= '<script type="text/javascript" src="' . $js_url . '"></script>';
  79.         
  80.         $button = '<button type="button" id="qier_thread_button" class="qier-thread-button">';
  81.         $button .= '<span class="qier-thread-icon"></span>';
  82.         $button .= '<span class="qier-thread-text">' . $button_text . '</span>';
  83.         $button .= '</button>';
  84.         
  85.         return $output . $button;
  86.     }

  87.     private function get_position_for_hook($hook) {
  88.         switch ($hook) {
  89.             case 'post_top': return 1;
  90.             case 'post_middle': return 2;
  91.             case 'post_bottom': return 3;
  92.             default: return 0;
  93.         }
  94.     }

  95.     public function get_button_position() {
  96.         global $_G;
  97.         return $_G['cache']['plugin']['qier_thread']['button_position'];
  98.     }

  99.     private function is_plugin_enabled() {
  100.         global $_G;
  101.         return !empty($_G['cache']['plugin']['qier_thread']['enable']);
  102.     }
  103. }
复制代码


试过好多方案  就是不能正常的显示出按钮 查看网页源代码 也没用相关插件的js或者css文件路径

也就是说没启动插件

不知道什么原因【上面的代码是改了好几种方案的其中一种了 都不显示】

日志全开  日志页抓不到。

我知道答案 回答被采纳将会获得1 贡献 已有1人回答
回复

使用道具 举报

16

主题

871

回帖

988

积分

自成一派

贡献
12 点
金币
15 个
QQ
发表于 2024-9-15 08:40:34 | 显示全部楼层
综合法务服务,这个网站,我看看呗
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 关注公众号
  • 有偿服务微信
  • 有偿服务QQ

手机版|小黑屋|Discuz! 官方交流社区 ( 皖ICP备16010102号 |皖公网安备34010302002376号 )|网站地图|star

GMT+8, 2024-10-15 02:59 , Processed in 0.038113 second(s), 7 queries , Redis On.

Powered by Discuz! W1.0 Licensed

Cpoyright © 2001-2024 Discuz! Team.

关灯 在本版发帖
有偿服务QQ
有偿服务微信
返回顶部
快速回复 返回顶部 返回列表