我正在创建我的第一个wordpress插件。在其中,用户可以选择添加新城市并查看这些城市的活动。
我的客户要求是网址必须像这样
SITE_NAME/cities/NY
或
SITE_NAME/cities/Califonia
我决定创建一个文件夹城市,如果用户试图创建一个新的城市,我将在该城市的该文件夹中创建一个文件。此外,我还将该条目添加到数据库中。我将也可以将PHP代码插入到文件中。
成为WP插件的新手。我的方法是否正确(用于创建文件)?还有其他办法吗?
答案 0 :(得分:5)
如果你没有使用Wordpress,你的方法会有效,但我绝对不会建议你在Wordpress Framework中做你想要的事情。
不是试图重新发明轮子,而是使用现有的插件实现您想要的一切。我绝对建议采用这种方式,特别是如果你没有很多编写Wordpress插件的经验。
就是这样!希望这足以让您开始所需的一切。
答案 1 :(得分:4)
这个插件做了几件事
这个插件不需要安装任何额外的插件,它是无依赖的,只使用WP核心。
至于获取正确的网址结构,我建议您仔细阅读:http://codex.wordpress.org/Using_Permalinks。
CITY is a single term w/i the taxonomy *cities*
EVENT is the post single
SITE_URL/cities/CITY
会在 CITY SITE_URL/cities/CITY/EVENT
来阅读特定城市中的特定活动在Settings -> Permalinks
管理面板中选择:“帖子名称”并保存。
然后,转到您的Ce Events -> Cities
管理员屏幕。
将鼠标悬停在您的某个条款上(在我的情况下是纽约市),然后点击查看。
它应该打开那个术语(城市)的列表视图,网址结构如下:http://wp.local/city/new-york-city/
如果您需要city
阅读cities
,请修改我与您共享的主插件文件的第102行:
'rewrite' => array('slug' => 'city'),
答案 2 :(得分:2)
为什么不将城市设为Custom Post Type?然后,您可以定义一个子弹“城市”并获得该结果,还可以添加类别和标签等分类法,以进一步帮助导航。
答案 3 :(得分:2)
不要那样做。 WordPress为您提供了一个goog API来执行您想要做的事情:管理漂亮的URL(slugs),数据库操作(您不需要为此编写/读取文件)以及用于注册和触发操作的正确代码工作流程。
所以,我认为你必须开始阅读有关WordPress plugins(其哲学和API)的基础知识,然后决定是否要使用其自定义帖子类型(准备使用)或者如果你想创建特定的内容类型。
答案 4 :(得分:0)
是的,这是很好的方法。你可以做的另一件事是,而不是在fie中添加代码。从DB中获取代码。 在DB中创建一个表,创建一个varchar作为数据类型的列,并在其中插入公共代码。