L'ajout d'images dans les blocs html
J'ai ajouté un peu de code html dans mes Blocs de contenu et activé HTML filtre.
J'ai utilisé des chemins relatifs pour mes images, comme les "sites/all/themes/zen/zen/image.png"
Je suppose que ce n'est pas correct parce que j'ai besoin de changer mes chemins en fonction je suis dans la page d'accueil ou "node/id de la page".
J'imagine que je ne peut pas utiliser le PHP à l'intérieur des blocs, donc je ne peux pas utiliser $base_url... comment pouvez ajouter des images de chemin avec uniquement du html ?
grâce
OriginalL'auteur aneuryzm | 2010-08-04
Vous devez vous connecter pour publier un commentaire.
Les réponses précédentes fournir une partie de la solution, mais voici une meilleure scoop:
Écrite à la main en HTML
Si votre site vit à example.com (c'est à dire que c'est la "racine" du site), puis l'ajout d'un avant slash votre chemin relatif permettra de résoudre le problème, comme d'autres l'ont suggéré:
Cependant, si votre site vit à
example.com/my-drupal-site
, alors vous aurez besoin de l'écrire comme ceci:C'est vraiment mieux si vous pouvez utiliser PHP pour déterminer le chemin d'accès approprié. Si vous êtes à l'appel d'une image à partir d'un thème, vous pouvez utiliser Drupal fonction
drupal_get_path
pour obtenir le chemin d'accès comme ceci:Et puis vous pourriez être vraiment Drupaly à ce sujet et d'utiliser le
theme_image
fonction pour générer le code HTML pour l'image:Où
$img
détient désormais le code HTML pour la<img>
balise et sonsrc
,alt
, ettitle
attributs. Voir la documentation de l'API pour drupal_get_path et theme_image pour plus d'informations.Point-et-cliquez sur la Solution
Comme jeffreymb points, votre pari est plus facile est d'utiliser une combinaison d'un éditeur WYSIWYG et intégré dans le traitement de fichiers de module IMCE de passer sous silence tous ces détails pour vous. Si vous n'avez pas accès au "code PHP" format d'entrée, c'est la meilleure solution.
Donc, étapes de:
Voir ce post pour un peu plus de détails sur le processus d'installation et assurez-vous de lire la documentation qui l'WYSIWYG module affiche sur sa page de configuration.
Une fois que vous avez IMCE installé et intégré à votre WYSIWYG, lorsque vous cliquez sur le bouton "Image" dans votre barre d'outils WYSIWYG, normal de votre boîte de dialogue devrait apparaître, mais avec une nouvelle petite icône pour ouvrir l'IMCE navigateur de fichiers. Ce navigateur de fichiers vous permet de parcourir votre
files
dossier pour les images ou pour charger des nouveaux fichiers. Il prend également en charge un minimum de manipulation de l'image, et de générer automatiquement le code HTML nécessaire une fois que vous avez sélectionné une image.OriginalL'auteur semperos
Je vous conseille d'utiliser le Pathologique module pour ce cas. C'est un filtre que vous pouvez ajouter à votre formats d'entrée à convertir les Url relatives comme ça dans la bonne Url à l'aide de votre site, l'URL de base. En Plus, c'est utile si vous avez des images dans votre contenu RSS des sites qui re-publier du contenu (comme les agrégateurs de flux, etc.) avoir le lien vers l'URL complète.
OriginalL'auteur Dave Reid
Je utiliser CKeditor et IMCE modules pour ce faire sur mes sites.
C'est très convivial et facile à mettre en place.
OriginalL'auteur Icode4food
Au lieu de le chemin d'accès relatif, utilisez le chemin d'accès absolu. Donc il faudrait être:
Remarque la barre oblique au début. La barre oblique doit être la seule chose que vous devez faire pour convertir les chemins d'accès relatifs à l'absolu pour une utilisation dans droite HTML.
OriginalL'auteur
Si vous commencez votre image sur les chemins avec une barre oblique ("/sites/all/themes/zen/zen/image.png") ce sera toujours par rapport à votre drupal répertoire racine.
Vous pouvez aussi tout simplement choisir "code PHP" comme le format d'Entrée et utiliser $base_url comme vous le dites.
OriginalL'auteur jackocnr
Je le fait avec cck blocs . La cck blocs module drupal,drupal champs en blocs
OriginalL'auteur jasonhao