No.4230
🧇Re:4229◆JavaScriptを使って埋め込む方法でも構わないなら、なおさら簡単なように思います。
何もページ全部を丸ごと埋め込まなくても、ページの一部分(本当に目次として機能する部分)だけを抜き出して埋め込めば良いのです。
例えば、サイトマップページ用スキンに <div id="kokodake">~</div> という空間を用意して、その内部に全記事リストが出力されるように作っておきます。(ヘッダとかフッタとか著作権表示とかはその外側に配置しておけば問題ありません。)
あとは、JavaScriptでその id="kokodake" の範囲だけを抜き出して埋め込めば済みます。
以下は、ChatGPTから返ってきたままのソースで動作確認はしていないのですが、以下のコードをお使いのスキンに貼り付ければ、その位置(正確には <div id="targetDiv"></div> の位置)に、サイトマップページモード内の <div id="kokodake">~</div> の範囲だけが埋め込まれます。
<div id="targetDiv"></div>
<script>
// 対象のURL
var targetUrl = 'https://お使いのドメイン/てがろぐ設置場所/tegalog.cgi?mode=sitemap';
var xhr = new XMLHttpRequest();
xhr.open('GET', targetUrl, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4 && xhr.status == 200) {
var parser = new DOMParser();
var doc = parser.parseFromString(xhr.responseText, 'text/html');
var targetElement = doc.getElementById('kokodake');
var targetDiv = document.getElementById('targetDiv');
targetDiv.innerHTML = targetElement.innerHTML;
}
};
xhr.send();
</script>
既にJavaScriptでの埋め込みをお試しになったとのことですから、別に上記のソースを使わなくても、そのときのソースを流用なさるのでも良いと思います。要は「ページ全体を丸ごと取得する」のではなく、「ページ内の指定要素だけを取得する」という方法に変えれば良いだけですから。
畳む
何もページ全部を丸ごと埋め込まなくても、ページの一部分(本当に目次として機能する部分)だけを抜き出して埋め込めば良いのです。
例えば、サイトマップページ用スキンに <div id="kokodake">~</div> という空間を用意して、その内部に全記事リストが出力されるように作っておきます。(ヘッダとかフッタとか著作権表示とかはその外側に配置しておけば問題ありません。)
あとは、JavaScriptでその id="kokodake" の範囲だけを抜き出して埋め込めば済みます。
以下は、ChatGPTから返ってきたままのソースで動作確認はしていないのですが、以下のコードをお使いのスキンに貼り付ければ、その位置(正確には <div id="targetDiv"></div> の位置)に、サイトマップページモード内の <div id="kokodake">~</div> の範囲だけが埋め込まれます。
<div id="targetDiv"></div>
<script>
// 対象のURL
var targetUrl = 'https://お使いのドメイン/てがろぐ設置場所/tegalog.cgi?mode=sitemap';
var xhr = new XMLHttpRequest();
xhr.open('GET', targetUrl, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4 && xhr.status == 200) {
var parser = new DOMParser();
var doc = parser.parseFromString(xhr.responseText, 'text/html');
var targetElement = doc.getElementById('kokodake');
var targetDiv = document.getElementById('targetDiv');
targetDiv.innerHTML = targetElement.innerHTML;
}
};
xhr.send();
</script>
既にJavaScriptでの埋め込みをお試しになったとのことですから、別に上記のソースを使わなくても、そのときのソースを流用なさるのでも良いと思います。要は「ページ全体を丸ごと取得する」のではなく、「ページ内の指定要素だけを取得する」という方法に変えれば良いだけですから。
畳む
- ユーザ「にしし」の投稿だけを見る (※時系列順で見る)
- この投稿と同じカテゴリに属する投稿:
- この投稿日時に関連する投稿:
- この投稿に隣接する前後3件ずつをまとめて見る
- この投稿を再編集または削除する