对于以下不依赖短代码的问题,有谁能推荐一个好的基于插件的解决方案,而不是基于模板或主题的解决方案吗?
我有一个插件,可以创建一个自定义帖子类型和四个自定义分类法。
自定义帖子类型具有/songs
鼻涕虫
自定义分类法具有以下段塞:
/songs/genres
/songs/eras
/songs/venue
/songs/artists
我的问题是,如何让以下URL以表格形式显示我的自定义内容,而不干扰自定义模板或短代码?
/songs
- 显示数据库中按歌曲名称排序的所有歌曲的表格
/songs/<song-name>
- 显示连接到此歌曲的数据表
/songs/genres
- 显示数据库中按流派名称排序的所有流派的表格
/songs/eras
- 显示数据库中按纪元名称排序的所有纪元的表
/songs/venue
- 显示数据库中按场馆名称排序的所有场馆的表格
/songs/artists
- 显示数据库中按艺术家姓名排序的所有艺术家的表格
/songs/genres/<genre>
- 显示按名称排序的具有此流派的歌曲表
/songs/eras/<era>
- 显示一个歌曲表,按名称排序,带有此年代
/songs/venue/<venues>
- 显示按名称排序的歌曲表,并显示此地点
/songs/artists/<artist>
- 使用此艺术家显示按名称排序的歌曲表
我希望每页都有一个示例表:
Song Name | Artist | Genre | Era | Venue
--------------------------------------------
song1 | artist1 | genre1 | era1 | venue1
song2 | artist2 | genre2 | era2 | venue2
我已经知道了如何使用自定义模板来实现这一点,但这些模板不能用于所有主题。除了我用于开发的主题之外,还必须为任何主题重新编码自定义模板。
在我对这个问题的阅读中,我逐渐了解到将设计代码放入插件中不是一个好主意。但是,如果是这种情况,我如何确保我的自定义内容在许多不同的主题中得到适当的显示?我想我缺少的是如何跨主题移植自定义帖子类型和自定义分类法。
如果我没有提供足够的信息,请告诉我还需要分享什么。
谢谢
最合适的回答,由SO网友:eyedarts 整理而成
答案是,没有办法做到我所要求的,至少没有简单的方法。Pieter Goosen在上面的评论中写道:
样式是主题领域,而不是插件,这是您的表应该位于的位置。如果您需要在插件中使用短代码,那么最好的解决方案就是使用短代码。
我想补充一点,自定义模板也是一个选项,但进一步模糊了主题和插件之间的界限。
WordPress文档对此并不清楚。这似乎是一个灰色地带。
WordPress允许我们创建自定义帖子类型和自定义分类法,但由于这些数据可以是任何内容,因此除了将其视为任何其他帖子、类别或标记外,没有跨主题使用这些数据的标准化方法。。。即使这样对待数据没有意义。
Aside: <作为第一次提问者,我对我目前在这里与之互动的常客感到失望,希望我未来的问题要么由更开放、更热情的人回答/评论,要么根本不被回答/评论。我希望有经验编写具有类似功能的插件的人能够回答这个问题。但是,由于这是我的第一个问题,而且涉及面很广,很可能是我的错。这是另一种RTFM情况:(我希望WordPress开发者社区比这更受欢迎