将wordpress功能添加到客户端网站的某些部分

时间:2014-05-02 16:53:26

标签: php wordpress

我有客户的网站我将在未来几个月内重做。 我已经用PHP编程多年了,多年来我一直在使用wordpress,但我从来没有涉足wordpress的代码,或者使用了“The Loop”。

只是想知道:是否可以正常创建他们的网站,但是服务器上还有一个wordpress安装,允许客户将内容发布/编辑到网站的一两个特定页面?

在这种情况下,最好的选择是将整个网站创建为具有自定义主题的wordpress网站,还是可以在必要的常规php网站上提取帖子?

或者还有其他更好的选择我不知道吗? 感谢您的任何信息!

2 个答案:

答案 0 :(得分:1)

这样做的经典方式(正如celeriko在评论中指出的那样)是在blog目录中安装Wordpress并通过Wordpress运行您的博客。但是,您也可以按照要求执行操作,对于Magento开发人员来说这是常规的事情,因为Wordpress管理员更容易为客户添加静态内容并让我自定义。

有很多方法可以做到,但我最近使用的方法是在Wordpress安装中安装JSON API插件http://wordpress.org/plugins/json-api/并使用它将Wordpress安装中的内容提取到其他部分。站点。

为了给你一个代码示例 - 下面的代码在Wordpress中提取了一个名为event的自定义帖子类型的必要条目,访问名为eventdate的帖子中的自定义字段将它们全部放入一个数组中,按日期对其进行排序,并输出所有事件的列表,并在Wordpress安装中添加指向每个事件页面的链接。

<ul>
    <?php 

    $events = json_decode(file_get_contents('http://www.mydomain.com/blog/?json=get_posts&post_type=event'));

    $eventList = array();

    foreach ( $events->posts as $event_item ) :

        $arrayDate = date("ymdHi", strtotime($event_item->custom_fields->eventdate[0] ));

        $eventList[$arrayDate]['Title'] = $event_item->title;
        $eventList[$arrayDate]['Date'] = date('l jS F', strtotime($event_item->custom_fields->eventdate[0] ));
        $eventList[$arrayDate]['Link'] = $event_item->url;


    endforeach; 

    // Key reverse sort to get events in date order
    ksort($eventList);

    foreach ($eventList as $eventItem) : 

        echo '<li><a href="'. $eventItem['Link'] .'">'. $eventItem['Title'] .' - '. $eventItem['Date'] .'</a></li>';

    endforeach;     

    ?>
</ul>

答案 1 :(得分:0)

如何实施WordPress的选择将主要取决于您网站的要求。但如果您使用WordPress进行编辑页面,那么您将无视其目的。

如果WordPress对你来说太多了,那么还有很多其他CMS都很轻巧且学习曲线很小。它们可能符合您尝试实现的目的。下面列出了其中一些。

Anchor CMS

Pico CMS

Bolt CMS

Get Simple CMS