MakeShopにWordPress連携
MakeShopではWordPress連携オプションがある
例えばMakeShopのURLがhttp://shopsample.com
だった場合、http://shopsample.com/blog
にWordPressの記事が表示される
これによりWordPressの記事が同一ドメインになるので、SEOにも強いメリットがある
MakeShopのショップ画面にWordPressの記事を表示
連携したWordPressの記事一覧などを、/blog
ではなくMakeShopサイト上で表示したい場合
- 下記ソースをMakeShop側の好きな場所に配置する
モジュール化してあげると色んな画面から簡単に呼び出せるからおすすめ
<!-- ここにWordPressの記事を表示 -->
<div class="js-posts"></div>
<!-- WordPressの記事取得JS -->
<script src="//code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script type="text/javascript">
const post = {
// WordPressサイトURL
site_url: '//{MakeShopのURL}/blog',
// 表示件数
num: 10,
};
const api = post.site_url + "?rest_route=/wp/v2/posts&_embed&per_page="+post.num+"&_embed";
$.getJSON( api, function(results) {
$.each(results, function(i, item) {
// 各項目を変数へ格納
const title = item.title.rendered;
let content = item.content.rendered.replace(/<[^>]+>/g, '')
if(content.length > 150) content = content.substring(0,150) + "...";
const link = item.link;
const thum = item._embedded["wp:featuredmedia"][0].media_details.sizes.medium.source_url;
//指定のクラスへ投稿を追加
$('.js-posts').append(
`<div class="post-item">
<img src="${thum}" alt="${title}"/>
<a href="${link}">${title}</a>
<div>${content}</div>
<a href="${link}">もっと読む</a>
</div>`
)
});
});
</script>
site_url: '//{MakeShopのURL}/blog',
の部分は自身のURLに応じて書き換える
例えばMakeShopのURLが sampleshop.com
の場合はsite_url: '//
sampleshop.com
/blog',
になる
MakeShopにてWordPress連携オプションを利用した際に
あれこれしたときのメモ