Question de fainéant, mais il doit y avoir moyen (en local) d'afficher le répertoire courant, non ? (un genre echo pwd...).
<?php echo getcwd(); ?>
Courage, tu es normalement sur la bonne piste et ça devrait finir par marcher Le répertoire courant est le répertoire où se trouve la page ou tu es connecté.Voilà la config :
Wordpress : /var/www/wordpress/wp-content/themes/cutline-3-column-split-11/header.php
=> c'est dans ce fichier que je place mon include
Zenphoto : /var/www/wordpress/zenphoto/themes/zenpage-default/heading.php
=> c'est ce fichier qui me renvoie une image random
La ligne suivante fonctionne donc :J'ai essayé plein de chemins relatifs (ou absolus), aucun ne fonctionne :<?php include("http://127.0.0.1/wordpress/zenphoto/?p=heading"); ?><?php include '../../../zenphoto/?p=heading' ?> <?php include '/wordpress/zenphoto/?p=heading' ?>
<?php echo getcwd(); ?>
Donc je suis toujours dans l'index.php à la racine de wordpress, et pas dans le répertoire du thème./var/www/wordpress
$banniere = file_get_contents('./zenphoto/?p=heading');
echo $banniere;
ou encore :
$banniere = file_get_contents('./zenphoto/themes/zenpage-default/?p=heading'); echo $banniere;
Mais à chaque fois le même message d'erreur :Code : Tout sélectionner
/zenphoto/themes/zenpage-default/heading.phpCode : Tout sélectionner
/zenphoto/<?php
// a toi de le renseigner
$fichier = '/var/www/wordpress/...';
if (file_exists($fichier)) echo 'Fichier trouvé: ' . $fichier;
else echo 'Fichier introuvable';
?>
http://php.net/manual/fr/function.file-exists.php$homepage = file_get_contents('./zenphoto/?p=heading'); echo $homepage;
parce que la fonction include qui fonctionne est comme ceci :
<?php include ("http://127.0.0.1/wordpress/zenphoto/?p=heading") ?>
et que le répertoire courant est /var/www/wordpress.<?php
// a toi de le renseigner
$fichier = './zenphoto/themes/zenpage-default/heading.php';
if (file_exists($fichier)) echo 'Fichier trouvé: ' . $fichier;
else echo 'Fichier introuvable';
?>
Alors j'ai remplacé le "?p=heading" par un simple heading.php en utilisant la fonction include :<?php include ("./zenphoto/themes/zenpage-default/heading.php") ?>
Et là, j'ai un erreur différente :include("http://pascal.ledisque.free.fr/gallery/?p=heading"); <?php
define('ZENFOLDER', 'zp-core');
define('WEBPATH', 'http://127.0.0.1/wordpress/zenphoto');
require_once(WEBPATH . "/" . ZENFOLDER . "/template-functions.php");
?>
Hélas, cela ne marche plus dans les versions récentes de Wordpress, ce dernier ayant changé la manière de charger les pages du thème.<div id="randomhead"><a href='/wordpress/zenphoto/index.php?album=Amis/2009/lambon-200c-dimanche&image=dimanche-lambon-2009-06.jpg' title='Morceau d`image...'><img src='/wordpress/zenphoto/cache/Amis/2009/lambon-200c-dimanche/dimanche-lambon-2009-06_w970_h140_cw970_ch140.jpg' width=970 height=140 /></a></div>
L'image a donc été générée dans le cache de zenphoto, et dans un sous-répertoire correspondant au chemin d'où l'image a été extraite. function printHeadingImage($randomImage) {
$id = getAlbumId();
if (is_null($randomImage) || checkforPassword(silent)) {
$randomImage= new Image(new Album(new Gallery(), ''), 'zen-logo.jpg' );
}
if (!is_null($randomImage)) {
echo '<div id="randomhead">';
$randomAlbum = $randomImage->getAlbum();
$randomAlt1 = $randomAlbum->getTitle();
if ($randomAlbum->getAlbumId() <> $id) {
$randomAlbum = $randomAlbum->getParent();
while (!is_null($randomAlbum) && ($randomAlbum->getAlbumId() <> $id)) {
$randomAlt1 = $randomAlbum->getTitle().":n".$randomAlt1;
$randomAlbum = $randomAlbum->getParent();
}
}
$randomImageURL = getURL($randomImage);
echo "<a href='".$randomImageURL."' title='".gettext('Morceau d`image...')."'><img src='".
$randomImage->getCustomImage(NULL, 970, 140, 970, 140, NULL, NULL, !getOption('Watermark_head_image')).
"' width=970 height=140 alt=".'"'.
htmlspecialchars($randomAlt1, ENT_QUOTES).
":n".htmlspecialchars($randomImage->getTitle(), ENT_QUOTES).
'" /></a>';
echo '</div>';
}
}