ホーム 経験・テクニック共有 標準記事

標準記事

織夢DEDECMSからWordPressおよび他のCMSシステムへの移行チュートリアル方法まとめ

織夢DedeCMSは多くのサイト運営者が使用する国産CMSシステムの一つです。最近、織夢公式は商業ユーザーが使用するにはライセンス料を支払う必要があり、料金は5800元/年であると発表しました。そのため、商用利用のサイト運営者はWordPressなどの他の無料オープンソースのサイト構築システムに切り替えるか、商業ライセンスを購入することをお勧めします。国内の著作権はますます厳しくなっているためです。 これ…

2021年9月29日更新 約 9 分で読めます
织梦DEDECMS转WordPress和其他CMS系统教程方法汇总

DedeCMSは多くのサイト管理者が使用する国産CMSシステムの一つです。最近、DedeCMS公式が商用ユーザーはライセンス料を購入する必要があると通知しました。費用は5800元/年です。そのため、商用のサイト管理者は、WordPressなどの他の無料オープンソースのサイト構築システムに切り替えるか、商業ライセンスを購入することをお勧めします。中国国内の著作権はますます厳しくなっています。

ここでNaibaがDedeCMSからWordPressシステムへ簡単に移行できる方法をいくつかまとめます

DedeCMSからWordPressへの移行チュートリアル

DedeCMSからWordPressへの方法1:RSSエクスポートとインポート

この方法の原理は非常に簡単です。まず、DedeCMSシステム内でサイト全体のコンテンツをRSS形式でエクスポートし、次にWordPressのインポート機能を使用してRSSファイルをインポートすると、以前の記事が自動的にコピーされます。

具体的な手順は以下の通りです:

https://github.com/zyfcjtc/dedecms_to_wordpress

  1. dedecmsのdedeフォルダ(管理画面フォルダ)内でmakehtml_rss_action.phpファイルを見つけ、編集し、以下のコードを探します:
    echo "完成所有文件更新!";

    その下にコードを追加します:

    echo "<a href='/rss.xml' target='_blank'>浏览…</a>";

    これは、rss.xmlファイル生成後に生成結果をクリックして確認しやすくするためです。

  2. dedecmsのincludeフォルダ内でarc.rssview.class.phpファイルを見つけ、編集し、以下のコードを探します:
    $murl = $GLOBALS['cfg_cmspath']."/data/rss/".$this->TypeID.".xml";

    以下のように変更します:

    $murl = $GLOBALS['cfg_cmspath']."/rss.xml";

    これは、生成されるrss.xmlファイルパスを指定し、そのファイルをサイトのルートディレクトリに保存します

    さらに下にスクロールして以下のコードを見つけ、削除します:

    $orwhere .= "And (arc.typeid in (".GetSonIds($this->TypeID,$this->TypeFields['channeltype']).") )";

管理画面に進み——生成——RSSファイル更新を選択し、„単一カテゴリ最大記録数“を全サイトの記事数に変更し、„更新開始“をクリックします。更新が完了すると、サイトのルートディレクトリに全サイトのrss.xmlファイルが生成され、http://网站域名/rss.xmlで確認できます。補足:生成されたrss.xmlファイルにエラーがある場合、ルートディレクトリのtempletsフォルダ内のplusフォルダにあるrss.htmファイルを編集し、以下のコードを探します:

<description><![CDATA[[field:description function='html2text(@me)'/]]]></description>

以下のように変更します:

<description><![CDATA[[field:description/]]]></description>

注:WordPressのエンコーディングはUTF-8です。DedeCMSがUTF-8を使用していない場合は、インポート前にエンコーディングをUTF-8に変換してください。具体的な確認方法:common.inc.phpファイルを見つけ、その中の

$cfg_version = 'V57_UTF8_SP2';
$cfg_soft_lang = 'utf-8';
$cfg_soft_public = 'base';

でエンコーディングを確認できます。

DedeCMS RSSインポート手順

  1. DedeCMS記事タイトルなどの基本データをWordPressサイトにインポートする WordPress管理画面(admin)=> ツール => インポート => RSS に進み、生成されたDedeCMS全サイトRSSファイルをアップロードしてインポートします。インポート中にタイムアウトする可能性がありますが、RSSを再アップロードすればよく、重複インポートは発生しません。注:rss-import.php内のget_posts functionを修正することで、DedeCMS記事IDをWordPressに同時インポートすることを実現しました。詳細はこちらをご覧ください:https://github.com/zyfcjtc/dedecms_to_wordpress/blob/main/get_posts.php
  2. DedeCMS記事全文をWordPressサイトにインポートする DedeCMS記事のデータはdede_addonarticleデータベースのbodyフィールドに保存されています。このbodyフィールドの内容をWordPressデータベースのwp_postsテーブルのpost_contentフィールドに転送する必要があります。この変換には橋渡し役としてdede_archivesデータテーブルを使用します。つまり、dede_addonarticleのbodyの内容をまずdede_archivesに転送し、次にdede_archivesからwp_postsのpost_contentに転送します。この2回の変換のマッチングポイントは、それぞれDedeCMS内の記事IDと、WordPressにすでにインポートされている記事タイトル(これはDedeCMS内の記事タイトルと同じです)です。具体的な手順は以下の通りです: phpMyAdminに進み、DedeCMSサイトで使用しているデータベースを選択し、SQL入力ボックスで以下のSQL文を実行して、DedeCMSデータベースのdede_archivesテーブルにbodyフィールドを追加します。
    ALTER TABLE dede_archives ADD body longtext NOT NULL

    次に、以下のSQL文を実行して、dede_addonarticleデータテーブルのbodyフィールドの内容をdede_archivesのbodyフィールドにインポートします。この文は、dede_addonarticleのaidとdede_archivesのidをマッチングポイントとしています:

    UPDATE dede_archives,dede_addonarticle
    SET dede_archives.body = dede_addonarticle.body  
    WHERE dede_archives.id = dede_addonarticle.aid

    次に、phpmyadminのエクスポート機能を使用してdede_archivesテーブルをエクスポートし、次にインポート機能を使用してそのテーブルをWordPressサイトが使用するデータベースにインポートし、wp_postsテーブルと同じデータベース内に配置します。

    次に、SQL文を使用してdede_archivesのbodyをwp_postsのpost_contentにインポートします。記事タイトルをマッチングポイントとして(記事タイトルがすべて一意であることが前提)IDをマッチングポイントとして:

    UPDATE wp_posts,dede_archives  
    SET wp_posts.post_content = dede_archives.body  
    WHERE wp_posts.id = dede_archives.id

    これで記事内容部分の変換は完了です!

DedeCMSからWordPressへの方法2:データベース変換

おおよその考え方は、DedeCMSのデータベース内容をWordPressにインポートし、いくつかのデータベースコマンド操作を通じて、元々のDedeCMSのデータベースをWordPressのものに変換するというものです。この方法に関するオンラインのチュートリアルは比較的古く、試すことはお勧めしません。

DedeCMSからWordPressへの方法3:コピーまたはクロール

この方法は比較的、Naibaが皆さんに操作をお勧めするものです。なぜなら最も安全だからです。ただし、元のサイトのデータ量が大きすぎる場合、操作には非常に時間がかかります。

具体的な手順:

  1. まず一時的なWordPressサイトを構築します。チュートリアルはこちらを参照してください:WordPressインストールチュートリアル
  2. WordPress管理画面で、投稿、カテゴリー内に元のサイト(DEDECMS)のカテゴリーを設定します。
  3. 手動で記事を一つずつコピーするか、クローリングソフトウェア(淘宝にはクローリングルール作成を手伝う店舗があります)を使用して、すべての記事を収集します。
  4. Elementorなどのビルダーを使用してサイトトップページのデザインを作成します。
  5. ドメインを元のDedeCMSサイトのドメインに切り替えます。
  6. 疑似静的化と301リダイレクトルールを設定し、古いサイトのURLから新しいURLにリダイレクトできるようにして、SEOへの影響を減らします。

DedeCMSからWordPressへの方法4:PHP移行スクリプト

この方法は、我爱水煮魚が共有したPHPスクリプトで、自身のサーバーのSSH権限が必要です。具体的な方法は以下の通りです:

1、PHPスクリプトファイルをダウンロードします。

ダウンロードリンク

2、スクリプトファイルを開き、下図の内容を編集します。

DEDECMSのデータ設定パラメータは、DEDECMSの data/common.inc.php から取得できます。

3、修正したPHPファイルを新規インストールしたWordPressサイトのルートディレクトリにアップロードします。

4、SSHコマンドを使用して実行します。php dedecms_to_wordpress.php

SSHを使用するには、自身のサーバーまたはVPSを持っていることが前提です。共有ホスティングにはありません。VPSをお持ちでない場合は、以下を参照してください:安定性とコストパフォーマンスに優れたVPSのおすすめ

VPSを取得してもSSHの使い方がわからない場合はこちらを参照:Xshell 6でVPSに接続するチュートリアル_PCでVPSにログインする方法

実行後は、自動処理が完了するのを待つだけです。

DedeCMSからWordPress移行後の注意事項

一、疑似静的化と301リダイレクトに注意

DedeCMSとWordPressはどちらもPHPプログラムですが、擬似静的ルールが異なります。そのため、DedeCMSからWordPressに移行すると、以前のDedeCMSの記事ページのリンクがエラーになります。これを解決するには、301リダイレクトルールを作成して、古いDedeCMSサイトの記事リンクを新しいWordPressサイトのリンクにリダイレクトする必要があります。

WordPressで301リダイレクトを行うには、プラグインを使用することもできます。例えば、Redirection

二、ウェブサイトのページを再設計する必要がある

どの方法でDEDECMSをWordPressに変換しても、ウェブサイトのページデザインは変わります。そのため、すべてのサイト記事をコピーした後も、ウェブサイトのページをゼロからデザインする必要があります。初心者の場合は、Elementorビルダーを使用することをお勧めします。または、直接お金を払って誰かにデザインしてもらうのも、より確実な方法です。

DedeCMSからXunrui CMSへの移行チュートリアル

迅睿CMSも国産CMSシステムの一つで、公式サイトにはMITオープンソースライセンスに基づいて公開されており、無料で商用利用も制限されていないと記載されています。そのため、WordPressに慣れていないサイト管理者も検討できます。

迅睿CMSフレームワークはMITオープンソースライセンスに基づいて公開されており、無料で商用利用も制限されず、無料のオープンソース製品です。開発者は、フロントエンドおよびバックエンドインターフェースの著作権情報を含め、使用、複製、変更、統合、公開、配布、再ライセンス、または販売を自由に行うことが許可されています。

1、迅睿CMS公式サイトからソースコードをダウンロードし、ウェブサーバーにインストールします

迅睿CMSダウンロードアドレス

2、管理画面でDedeCMSデータ変換拡張機能をインストールします

3、DedeCMSサイトのデータベース情報を入力し、変換を行います

データベースの認識に成功したら、指示に従って操作を進め、最後に変換が完了したら、トップページなどのページを再設計して公開します。

5/5 - (1票)
前の記事 WordPress SEO最適化必須:オールインワン検索自動プッシュ管理プラグイン 同じタイムラインの近くのコンテンツを読み続ける。 次の記事 SSLエラー「Warning: getimagesize(): SSL operation failed with code 1」の記録 次の関連チュートリアルや経験を表示する。

ディスカッションに参加

経験の共有、質問、または更新が必要な箇所の指摘を歓迎します。

AIサイト構築アシスタント

🤖
こんにちは!私はNaibaサイト構築ノートのAIアシスタントです。何かお手伝いできることはありますか?
クイックコンサルティング: