Php 如何在OpenCart中制作一个简单的模块?从Wordpress获取最新帖子并在OpenCart中显示的示例?

Php 如何在OpenCart中制作一个简单的模块?从Wordpress获取最新帖子并在OpenCart中显示的示例?,php,wordpress,opencart,Php,Wordpress,Opencart,我是这个论坛的新手,也是OpenCart的新手 我需要在OpenCart中创建模块的帮助。在我的例子中,它将从WordPress安装的每个类别中获得最新的5篇文章,并显示在我OpenCart商店的主页上 我已经在同一台主机上的同一个数据库中安装了OpenCart和WordPress 有人能给我一些建议吗?这很容易,取决于你的技能。我希望对你的问题投反对票,但我将简要介绍这些步骤,因为这不是有效的方式。第一件事是编辑我们的主题文件。由于OpenCart是MVC,我们编辑主题,然后编辑PHP。。。或

我是这个论坛的新手,也是OpenCart的新手

我需要在OpenCart中创建模块的帮助。在我的例子中,它将从WordPress安装的每个类别中获得最新的5篇文章,并显示在我OpenCart商店的主页上

我已经在同一台主机上的同一个数据库中安装了OpenCart和WordPress


有人能给我一些建议吗?

这很容易,取决于你的技能。我希望对你的问题投反对票,但我将简要介绍这些步骤,因为这不是有效的方式。第一件事是编辑我们的主题文件。由于OpenCart是MVC,我们编辑主题,然后编辑PHP。。。或者PHP,然后是主题文件。。反之亦然

指导 1-打开
/catalog/view/theme/default/template/common/home.tpl

在这一行之后:

<h1 style="display: none;"><?php echo $heading_title; ?></h1>
这将使您了解一些基本的PHP函数调用。这是一个让你开始的方向。您可以进一步扩展到链接类别、作者链接等

顺便说一下,所有这些变量都可以使用,正如您在WP_Posts表中看到的:

/*

All these can be used

ID
post_author
post_date
post_date_gmt
post_content 
post_title
post_excerpt
post_status
comment_status
ping_status
post_password
post_name
to_ping
pinged
post_modified
post_modified_gmt
post_content_filtered
post_parent
guid
menu_order
post_type
post_mime_type
comment_count

*/
提示 一般来说,浏览一下整个OpenCart过滤器——有很多关于编写MOD、修改其工作方式和创建自定义页面的文章——这些都会对您的长期调整非常有帮助。上面的代码没有得到样式或进一步的调整,这是一个指南

进一步阅读和改进模块类型帖子 如何向opencart管理添加新模块?

如何在opencart中创建自定义管理员页面?

如何获取外部页面优惠券/凭证表单以在OpenCart中工作?

Opencart-如何在产品页面上执行自定义代码?控制器产品上没有mods

如何在任何页面上显示OpenCart上的小计?


谢谢你的孩子给了我一个非常有用的答案,但我认为有一点值得补充。如果您确实希望在opencart商店上显示您的wordpress博客,请确保您为您的wordpress数据库授予opencart数据库用户正确的用户权限,通过cpanel完成我的案例。

用于wordpress问题…@Eugen,没错,但这更像是opencart问题。开发者,欢迎来到SO——你需要在你的问题上付出更多的努力,才能在这里得到任何帮助。将您尝试过的内容添加到您的问题中,添加代码等。“请为我完成所有工作”类型的问题在此处被否决或关闭。谢谢您的回答。不是每个人都有cPanel,我认为这样做是不明智的。这取决于数据库和博客设置的情况。例如,我们有一个博客托管在一个单独的服务器上。我不认为你真的会有选择吗?您正在访问WP数据库,但它没有与OC数据库相同的登录凭据。对我来说,答案正如我所说的,因为我刚刚收到了一条“拒绝访问”的错误消息,没有它。我可能会被更正。执行了另一次安装,但这次没有访问错误,但最新安装在我的apache localhost上。@开发人员为什么仍然不接受此答案?请接受答案,这样你的问题就很明显已经解决了。谢谢大家!@在这种情况下,您如何实际连接到数据库?因为您正在向OC添加代码,但需要在WP中查询DB。我正试图完成同样的事情,博客只是一个子领域。blog.url.com(WP)和url.com(OC)@Travis就是这样。使MySQL连接变量位于循环之上-不是一种干净的方法,而是一种快速的解决方案
<div>
    <h2>Latest posts from our blog</h2>
    <?php MyWordPressFunction() ?>
</div>
// WORDPRESS LATEST POSTS
//#customPHP
// The tag above is so that when you upgrade OpenCart
// Before doing so you need to make sure of all the core
// core changes you made - a unique global comment tag
// is easy to find.

function MyWordPressFunction(){

    // DB
        // GET THE POSTS
        // LIMIT BY 5
        // ORDER BY LATEST POSTS
    $sql=mysql_query("SELECT * FROM `wordpress_db`.`wp_posts` ORDER BY `wp_posts`.`post_date` DESC LIMIT 5");
    while($row = mysql_fetch_array($sql)){

        // VARS (easy to play with in the echo)

        $id=$row["ID"];
        $author=$row["post_author"];
        $date=$row["post_date"];
        $post=$row["post_content"];
        $title=$row["post_title"];

        echo '

            <div id="postID_'.$id.'>

                <h3>'.$title.'</h3>

                <p>'.$post.'</p>

                <p>Posted by '.$author.' on '.$date.'</p>

            </div>

        ';

    }

    // END DB

}
/*

All these can be used

ID
post_author
post_date
post_date_gmt
post_content 
post_title
post_excerpt
post_status
comment_status
ping_status
post_password
post_name
to_ping
pinged
post_modified
post_modified_gmt
post_content_filtered
post_parent
guid
menu_order
post_type
post_mime_type
comment_count

*/