我想我已经解决了——[discourse_latest] 本身并不是一个有效的短代码,我可能是在某处看错了。我把它改成了 [discourse_topics source=“latest”],结果就成功了。
(尴尬地笑)
Ray
附:@simon,我该如何更改短代码中显示的最新主题的日期格式?目前显示为 2020-10-20,我更希望它显示为 Oct-20 或类似格式。
我想我已经解决了——[discourse_latest] 本身并不是一个有效的短代码,我可能是在某处看错了。我把它改成了 [discourse_topics source=“latest”],结果就成功了。
(尴尬地笑)
Ray
附:@simon,我该如何更改短代码中显示的最新主题的日期格式?目前显示为 2020-10-20,我更希望它显示为 Oct-20 或类似格式。
我相当确定短代码插件使用的是“WP Discourse 评论”选项卡中设置的日期时间格式。点击该设置描述中的链接,即可查看可用的日期格式选项。
这招管用,谢谢!
Ray
能否默认将用户名作为头像的标题,或提供相应的短代码选项?另外,或许可以增加一个选项来隐藏用户名(例如 display_usernames = "false")?
在此期间,如果有人需要此功能,请前往 wp-discourse-shortcodes-master/lib/discourse-topic-formatter.php 文件,将
$avatar_image = '<img class="wpds-latest-avatar" src="' . esc_url_raw( $poster_avatar_url ) . '">';
替换为
$avatar_image = '<img class="wpds-latest-avatar" title="'. esc_html( $poster_username ) . '" src="' . esc_url_raw( $poster_avatar_url ) . '">';
非常棒的插件,谢谢!
另外,将分类链接(更多信息)作为短代码中的一个选项也会很有用。
这个插件还在维护吗?![]()
似乎无法“刷新”Discourse 的最新帖子。
我一定是哪里操作有误,
[discourse_topics source=“latest”] 这是我使用的短代码。
它已经拉取了三个 Discourse 主题,但之后我又添加了一些主题,想看看能否同步到我的 WordPress 站点。
但并没有同步过来。
尝试了 Ajax 事件,但仍然无法拉取新帖子 ![]()
能否仅从特定分类或子分类中获取主题?
感谢您管理这个插件。我需要在 WordPress 的主网站上显示论坛活动。
我的 Discourse 实例中有很多主题,但 [discourse_topics] 短代码返回空白,仿佛没有数据——Screenshot - b9160f714e42b2677b01bcf00c041634 - Gyazo
并且在前端抛出以下错误:警告:在 /home/customer/www/web.com/public_html/wp-content/plugins/wp-discourse-shortcodes-master/lib/discourse-topic-formatter.php 的第 94 行,foreach() 收到了无效参数。
如果这对任何人有帮助,我的社区 RSS 源工作正常,并列出了所有主题。我可能漏掉了什么?感谢帮助 ![]()
编辑和更新:看起来代码中的 topics 变量没有被填充。
第 94 行:foreach ( $topics as $topic ) {
.....
}
// 主题变量定义
if ( $use_plugin_formatting ) {
$topics = $discourse_topics['topic_list']['topics'];
}
我已经解决了。显示私密帖子的复选框未启用。除此之外,该错误可以通过为 $topics 变量添加空值条件来解决。我这样做了,问题就顺利解决了。
要是 PHP 的 foreach 不抱怨空数组,我的生活就会美好得多。我们将在下一个版本中添加此检查。
哪个选项可以更新 Discourse 中用户的最新 WordPress 头像?
使用 Webhook 同步用户数据到 Discourse。——我已创建该 Webhook 并在两个站点间正常工作,但无法更新 Discourse 用户的头像。
你好 Richard,
我正在使用此插件的最新版本,但不幸的是它不起作用。
我遇到了和 Nick 同样的问题:
似乎无法“刷新”来自 Discourse 的最新帖子。
一定是我做错了什么,
[discourse_topics source=“latest”] 我正在使用这个短代码。
它从 Discourse 拉取了三个主题,但从那以后,我添加了更多主题,想看看它们是否会显示在我的 WordPress 网站上。
它们没有显示。
尝试了 Ajax 事件,但似乎仍然无法拉取新帖子 ![]()
您能否在此提供帮助?
这个终于排到我的列表最前面了,我明天会着手处理这个插件,修复一些bug并回答您的问题。抱歉耽搁了这么久。
谢谢,非常感谢。
请注意,我的问题已通过刷新主网站的对象缓存得到解决。
您是否配置了“启用 Discourse Webhook”设置?
我已经彻底测试了该插件,修复了几个错误,其中两个与未能更新短代码输出的缓存有关,更新了自述文件并推送了一个新版本。
我仍然看到一个主要问题,即具有不同类别的 [discourse_topics] 短代码无法正常工作。这将需要大量工作来修复。我将在休假后第一时间处理这个问题。
在此实例中,我只使用了一个短代码,因此我不确定是否应该遇到问题。我想显示私有主题,但仅限于某些类别(这些类别都归于一个父类别下)。无论是使用单个父类别 ID(例如 [discourse_topics category=\"5\" ... ])还是每个子类别 ID(例如 [discourse_topics category=\"6,7,8,9,17\" ... ])似乎都无法将结果限制在这些类别内(会显示额外的、不应显示的私有主题)。我想知道这是否是当前预期的行为(您是否会解决)?
不支持多个类别 ID。
这确实不是预期行为。
一个快速的解决方法是禁用设置选项卡中的“显示私有主题”复选框。这并不能解决选择了错误类别的问题,但可以阻止私有主题出现在 WordPress 中。
您能否检查一下 Discourse 方面的日志,并搜索正在进行的 API 调用?当您在 WordPress 端编辑和更改页面时,API 调用将被触发。