Загрузка внешнего контента с помощью jquery или iframe? - PullRequest
2 голосов
/ 07 января 2011

Hiho,

Существует существующий веб-сайт, который мне нужно включить в другой сайт, который выглядит следующим образом:

a.mysite.com

и мне нужно получить контент с этого сайта в моем

www.mysite.com

сайт ...

Поскольку мне нужно получить доступ к содержимому iframe, та же политика происхождения создает проблему здесь. Я настроил mod_proxy на Apache, чтобы прокси передавал все запросы от

www.mysite.com / a

до

a.mysite.com

Это будет работать нормально ... но моя проблема в том, что я не уверен, как лучше всего включить эти страницы.

1. Идея

Поскольку содержимое iframe представляет собой полнофункциональный сайт с верхней навигацией ... левой навигацией и т. Д. .... мне нужно изменить шаблон страницы, чтобы отображалось только поле контента, чтобы можно было интегрировать эту страницу фрейм.

2. Идея

Я мог бы просто загрузить DIV, где содержимое лежит через JQuery.load (), и интегрировать его в мой сайт.

Как лучше всего выполнить такую ​​задачу? Насколько плохи обе идеи с точки зрения SEO?

Ответы [ 3 ]

2 голосов
/ 07 января 2011

Если это не требует значительных переделок, лучшее решение - объединить их в одну HTML-страницу на стороне сервера (с использованием включений на стороне сервера).

Преимущества

  • Нет проблем с SEO, так как он поставляется в виде одной страницы. Содержимое в iFrames и содержимое, загружаемое через AJAX (со связанной ссылкой в ​​HTML) просматриваются , но с главной страницей связана только ссылка, а не само содержимое Смотри: http://www.straightupsearch.com/search-marketing/best-practices/seo_iframes_a_g/
  • Ускоренная загрузка страницы - любое из ваших предложений приведет к тому, что главная страница будет загружена первой перед загрузкой другого содержимого.
  • Не полагайтесь на Javascript - ваш второй метод потерпит неудачу, если javascript не поддерживается / не включен.
  • Включите все JS и CSS только один раз - ваш первый метод потребует, чтобы они дублировались в <head> каждой страницы. Это более долгосрочное преимущество, если вы хотите добиться полной интеграции сайта «а». Однако изначально это может быть недостатком, см. Ниже.

Неудобство

  • Может вызвать конфликты со скриптами и CSS между двумя страницами. Однако эта же проблема существует с вашим вторым методом.

Если вы должны выбрать один из двух предложенных вами вариантов, я бы не выбрал второй, как предлагали другие. Значительные объемы статического содержимого никогда не должны загружаться через Ajax, и в этом случае вы не получите никаких дополнительных преимуществ. По крайней мере, iFrames гарантирует отсутствие конфликтов JS и CSS.

1 голос
/ 07 января 2011

Используйте 2-й подход (jQuery.load), и если вы работаете с HTML5, для браузеров, поддерживающих History API, вы можете изменить URL-адрес на любой контент для этого div.

Проверьте https://github.com/blog/760-the-tree-slider для примера того, как Github сделал это для своего ползунка дерева.

EDIT:

Я не уверен, как использование iFrame, src которого указывает на ваш собственный домен, влияет на рейтинги поиска, но в лучшем случае это серая область. Я бы предположил, что, возможно, какой-то Pagerank просочится от родителя к ребенку, но я понятия не имею, как это будет работать, например, если блоггер ссылается на вашу страницу с помощью iframe, который указывает на другую страницу. Этот вопрос можно задать на справочном форуме для веб-мастеров 1010 *

.
0 голосов
/ 07 января 2011

Всегда говори «нет» фреймам.JQuery + Ajax полностью.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...