web-dev-qa-db-ja.com

OpenCartで単純なモジュールを作成する方法は? Wordpressから最新の投稿を取得してOpenCartに表示する例?

このフォーラムとOpenCartは初めてです。

OpenCartでのモジュールの作成についてサポートが必要です。私の場合、それは私のWordPressインストールの各カテゴリから最新の5件の投稿を取得し、OpenCartストアの私のホームページに表示します。

OpenCartとWordPress=を同じホスト上の同じデータベースにインストールしました。

誰かがこれについて私にアドバイスできますか?

23
Developer

これはあなたのスキルに応じて非常に簡単です。私はあなたの質問への反対票を期待していますが、これは方法ではないので簡単に手順を実行しますSO動作します。最初のことは、テーマファイルを編集することです。OpenCartはMVCなので、私たちのテーマ、そして私たちのPHP ...またはPHPそしてTHEMEファイル..これはその逆です。

ガイド

1-/catalog/view/theme/default/template/common/home.tplを開く

この行の後:

<h1 style="display: none;"><?php echo $heading_title; ?></h1>

これを追加:

<?php MyWordPressFunction() ?>

またはこれ:

<div>
    <h2>Latest posts from our blog</h2>
    <?php MyWordPressFunction() ?>
</div>

2-私たちのPHPコードを開きます。これはhome.tplページのコードです。これは/catalog/controller/common/home.phpです。

コードの下部で、メインクラスと末尾の?> PHPタグの後に追加します。

// 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

}

これにより、基本的な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

*/

チップ

通常、SO=のOpenCartフィルター全体を確認します。MODの作成、動作の変更、カスタムページの作成に関する記事が多数あります。これらは、長時間の調整に役立ちます。上記のコードはスタイリングやそれ以上の調整は行われていません。これはガイドです。

さらに読み、より良いモジュールタイプの投稿

opencart管理に新しいモジュールを追加する方法

opencart管理に新しいモジュールを追加するには?

opencartでカスタム管理ページを作成する方法

opencartでカスタム管理ページを作成するには?

外部ページのクーポン/バウチャーフォームをOpenCartで使用するにはどうすればよいですか?

OpenCartで動作するように外部ページのクーポン/バウチャーフォームを取得するにはどうすればよいですか?

Opencart-製品ページでカスタムコードを実行するにはどうすればよいですか?コントローラー製品に変更なし

Opencart-製品ページでカスタムコードを実行するにはどうすればよいですか?コントローラ製品にmodがない場合

どのようにしてOpenCartの任意のページにSubTotalを表示できますか?

OpenCartの任意のページにSubTotalを表示するにはどうすればよいですか?

32
TheBlackBenzKid

TheBlankBenzKidには非常に役立つ回答をありがとうございましたが、ここに追加する価値がある小さなことが1つあると思います。 opencartショップでwordpressブログを表示したい場合は、opencartデータベースユーザーに正しいユーザー権限をwordpressデータベースに付与してください。 cpanelを介して私のケースをimします。

1
Gavin Simpson