哥斯拉 发表于 2022-10-3 17:23:57

求助如何修改提示信息页面这个


想要把<点击此处返回上一页>修改成返回主页。
页面是:我的域名/forum.php?mod=viewthread
求助大神解答
我知道答案 回答被采纳将会获得5 金币 + 5 金币 已有0人回答

Discuz智能体 发表于 2025-3-17 18:50:18

要修改Discuz论坛的提示信息页面,使其在显示提示信息后返回主页,你可以按照以下步骤进行操作:

1. **找到提示信息模板文件**:
   提示信息页面通常由 `source/language/lang_message.php` 文件控制。你可以在这个文件中找到相关的提示信息文本。

2. **修改提示信息模板**:
   你需要找到显示提示信息的模板文件,通常是 `template/default/common/message.htm`。你可以在这个文件中修改提示信息的显示方式。

3. **添加返回主页的链接或自动跳转**:
   在 `message.htm` 文件中,你可以添加一个返回主页的链接,或者使用 JavaScript 实现自动跳转。

   例如,你可以在 `message.htm` 文件中找到类似以下代码的地方:

   <div class="alert_info">
       <p>{$message}</p>
       <p><a href="{$redirect}">如果您的浏览器没有自动跳转,请点击这里</a></p>
   </div>

   你可以修改为:

   <div class="alert_info">
       <p>{$message}</p>
       <p><a href="{$siteurl}">返回主页</a></p>
       <script type="text/javascript">
         setTimeout(function() {
               window.location.href = "{$siteurl}";
         }, 3000); // 3秒后自动跳转到主页
       </script>
   </div>

   其中 `{$siteurl}` 是你的网站主页地址。

4. **清除缓存**:
   修改完成后,记得在Discuz后台清除缓存,以确保修改生效。

5. **测试**:
   访问你的论坛,触发一个提示信息(例如,发帖成功后的提示),看看是否已经修改为返回主页的链接或自动跳转。

### 注意事项:
- 如果你使用的是自定义模板,可能需要在你当前使用的模板目录下找到对应的 `message.htm` 文件进行修改。
- 如果你对代码不熟悉,建议在修改前备份相关文件,以防出现问题。

希望这个方法能帮助你解决问题!如果还有其他问题,欢迎继续提问。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。

Discuz智能体 发表于 2025-3-20 19:08:35

在Discuz!系统中修改提示信息页面的返回链接,可通过以下两种专业方案实现:

一、核心文件修改方案(推荐给有开发经验者)
1. 定位到语言包文件:
/source/language/lang_message.php

找到以下代码段:
'return_prev' => '返回上一页',
修改为:
'return_prev' => '<a href="/" class="alert-link">返回网站首页</a>',

2. 修改跳转逻辑(可选):
在/source/class/discuz/discuz_application.php中找到showmessage方法:
$jumpurl = str_replace('&amp;', '&', $jumpurl);
在该行上方添加:
if(empty($jumpurl) || strpos($jumpurl, 'http') === false){
    $jumpurl = $_G['siteurl']; // 强制跳转首页
}

二、模板覆盖方案(适合普通站长)
1. 进入模板目录:
/template/当前模板/common/

2. 创建message.htm文件(如不存在则新建),加入以下内容:
<!--{subtemplate common/header}-->
<div id="pt" class="bm cl">$navigation</div>
<div class="wp">   
    <div class="notice">
      <div class="alert alert-info">
            <p>{lang message}</p>
            <!--{if $url_forward}-->
            <p><a href="$url_forward">$_G['lang']['forward_now']</a></p>
            <!--{/if}-->
            <p class="alert_extra"><a href="/">返回网站首页</a></p>
      </div>
    </div>
</div>
<!--{subtemplate common/footer}-->

三、插件扩展方案(推荐长期维护站点)
可通过开发轻量级插件实现:
1. 创建插件目录结构:
myredirect/
├── discuz_plugin_myredirect.xml
└── source/
    └── plugin/
      └── myredirect/
            ├── class/
            │   └── model/
            │       └── Redirect.php
            └── template/
                └── message.htm

2. 在Redirect.php中通过继承机制重写跳转逻辑:
class model_Redirect extends discuz_application{
    public function showmessage(){
      // 自定义跳转逻辑
    }
}

注意事项:
1. 修改前务必做好文件备份
2. 模板方案需保持与原始模板结构一致
3. 若使用CDN加速,修改后需刷新缓存
4. 建议配合URL重写规则(伪静态)优化首页路径

修改完成后,所有系统提示信息(如登录提示、权限提示、操作成功提示等)的返回链接都将统一指向网站首页。如需针对不同场景设置不同跳转路径,可通过判断$_GET参数实现精细化控制。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。

Discuz智能体 发表于 2025-3-20 19:17:58

要修改Discuz!论坛中的提示信息页面,使其在特定情况下(例如在帖子页面 `/forum.php?mod=viewthread`)显示“返回主页”的链接,你可以通过以下步骤来实现:

### 1. 找到提示信息模板文件
Discuz! 的提示信息页面通常是通过 `template/default/common/message.htm` 文件来控制的。你需要编辑这个文件来修改提示信息的内容。

### 2. 修改 `message.htm` 文件
打开 `template/default/common/message.htm` 文件,找到你想要修改的部分。通常,提示信息页面会有一个返回链接,你可以在这个文件中找到类似以下的代码:

<!--{if $url_forward}-->
    <a href="$url_forward" class="alert-link">如果您的浏览器没有自动跳转,请点击这里</a>
<!--{else}-->
    <a href="javascript:history.back();" class="alert-link">返回上一页</a>
<!--{/if}-->

你可以将这段代码修改为:

<!--{if $url_forward}-->
    <a href="$url_forward" class="alert-link">如果您的浏览器没有自动跳转,请点击这里</a>
<!--{else}-->
    <a href="{echo get_site_url();}" class="alert-link">返回主页</a>
<!--{/if}-->

### 3. 添加自定义逻辑
如果你只想在特定的页面(如 `/forum.php?mod=viewthread`)显示“返回主页”的链接,你可以在 `message.htm` 文件中添加一些条件判断。例如:

<!--{if $_G['basescript'] == 'forum' && $_GET['mod'] == 'viewthread'}-->
    <a href="{echo get_site_url();}" class="alert-link">返回主页</a>
<!--{else}-->
    <a href="javascript:history.back();" class="alert-link">返回上一页</a>
<!--{/if}-->

### 4. 保存并上传文件
完成修改后,保存 `message.htm` 文件,并将其上传到服务器上替换原来的文件。

### 5. 清除缓存
在Discuz!后台,进入“工具” -> “更新缓存”,确保清除模板缓存,以便修改生效。

### 6. 测试
访问你的论坛,查看在 `/forum.php?mod=viewthread` 页面中,提示信息是否已经显示“返回主页”的链接。

通过以上步骤,你应该能够成功修改提示信息页面,使其在特定情况下显示“返回主页”的链接。如果你有其他问题或需要进一步的帮助,请随时提问!
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
页: [1]
查看完整版本: 求助如何修改提示信息页面这个 5金币