2012-09-03 3 views
-1

Est-il possible d'obtenir l'emplacement d'une image sur une page Web? Je veux l'utiliser pour og:image.

exemple:

<meta property="og:image" content="<?php 'get the image location' ?>" /> 

Il est pour une part Open Graph Facebook.

+0

Il sera très difficile de répondre sans plus de code. Pourquoi ne pas définir une variable avec le chemin de cette image lorsque vous générez votre code html? – j0k

+0

Je voudrais avoir un code PHP qui obtient un emplacement de l'image de la page Web. Ce que vous suggérez @ j0k est bon mais quand il y a plus d'images je veux les partager. Merci! –

+0

Vous ne pouvez pas avoir plusieurs images dans le tag meta og: image. Vous devriez seulement mettre le plus révélateur de toutes les images de la page. – j0k

Répondre

0

Il est une réponse longue et puisque vous avez fournit pas de code pour ce que vous avez essayé de faire, voici une description de haut niveau de ce que vous devez faire:

(Note: OP tente d'obtenir une source d'image à partir d'un Document HTML, le cas échéant)

Vous devez télécharger la page avec PHP, trouver une balise <img>, récupérer la source et retourner le résultat. Selon l'endroit où vous obtenez vos images, vous pouvez obtenir une seule image à partir d'un certain emplacement (pas seulement la première image qui pourrait être un logo ou même une image 1sq px insignifiante). Par exemple, si vous souhaitez obtenir l'image partagée par le premier utilisateur sur 9gag, recherchez la balise <img> dans la div ".img-wrap". Un moyen facile d'analyser le document HTML utilise: http://simplehtmldom.sourceforge.net/ - la page est assez explicite.

Vous voulez envelopper tout cela dans une fonction telle que getImageFromWebsite(URL) et ont cette fonction retourne l'attribut src des <img>

à le faire Downsides:

  • Le site vous pointez ceci sera responsable de votre contenu. Même si vous «savez» quelles images vous incluez, elles peuvent et vont probablement changer avec le temps.
  • La structure du site Web que vous pointez peut changer. Votre fonction devra également changer.
  • Le site Web pourrait décider de bloquer votre serveur s'il décide que vous consommez trop de bande passante.
  • Vous n'êtes pas dans le contrôle du contenu

Je peux ajouter à la liste. C'est amusant de s'entraîner, mais pas très pratique.

+0

Merci! Je vais au travail! –

+0

Assurez-vous de marquer ceci est correct si cela fonctionne pour vous :) – Claudiu