Cum să specifici sursa unei imagini în editorul de pagini WordPress?

15 ian. 2017, 11:15:45
Vizualizări: 16K
Voturi: 5

Am un fișier imagine stocat în directorul temei numit site.

Acum, în pagina mea principală folosind editorul de pagini WordPress, am introdus următorul cod dar nu afișează imaginea, se pare că locația este greșită.

<img src="site/images/footLogo.png" style="padding: 0px!important; color:white">

Spuneți-mi care este problema?

0
Toate răspunsurile la întrebare 4
0

URL-uri absolute

După cum au menționat și alții, trebuie să utilizați URL-ul complet pentru atributul src al imaginii, altfel browserul nu va putea să o găsească.

WordPress oferă funcția get_template_directory_uri() care returnează URL-ul complet către calea temei.

Deci, făcând:

<?php
$img_src = get_template_directory_uri() . '/site/images/footLogo.png';
?>

<img src="<?php echo $img_src ?>" style="padding: 0px!important; color:white">

imaginea va fi afișată, presupunând că calea este corectă și fișierul există.

Funcție helper

Dacă aveți mai multe imagini și doriți să simplificați procesul de afișare a acestora în șabloane, puteți crea o funcție personalizată care încapsulează get_template_directory_uri().

De exemplu:

function theme_image( $image ) {
  return get_template_directory_uri() . '/site/images/' . $image;
}

și apoi în șabloane faceți:

<img src="<?php echo theme_image('footLogo.png') ?>" 
     style="padding: 0px!important; color:white">

WordPress 4.7+ și "fallback pentru tema părinte"

Dacă utilizați cod WordPress 4.7+, veți avea acces la noua funcție get_theme_file_uri().

Beneficiul acestei funcții față de get_template_directory_uri() este că încarcă automat fișierul din tema copil dacă este disponibil.

Deci, de exemplu, dacă modificați funcția theme_image() în:

function theme_image( $image ) {
  return get_theme_file_uri( '/site/images/' . $image );
}

când faceți theme_image('footLogo.png'), imaginea 'footLogo.png' va fi încărcată din tema copil, dacă tema copil este în uz și fișierul este disponibil acolo, altfel va fi încărcată din tema părinte.

Această nouă funcționalitate oferă un "fallback pentru tema părinte" care se asociază cu "template parent theme fallback" de la tema părinte la tema copil, care există încă din WordPress 3.0 prin funcții precum get_template_part().

15 ian. 2017 13:08:59
1

Nu puteți folosi PHP în editorul de conținut, trebuie doar să scrieți calea completă către imaginea dumneavoastră.

<img src="/css/_include/img/slider-images/1.jpg" alt="Imagine" data-fullwidthcentering="on">
18 ian. 2017 20:27:56
Comentarii

Wordpress comentează codul PHP scris în editor.

MacInnis MacInnis
28 aug. 2021 19:41:58
0

Va trebui să copiați calea completă către imagine, astfel:
http://www.numele-siteului-voastru.extensie/wp-content/themes/site/images/footLogo.png în <img src="">.

WordPress lucrează cu URL-uri absolute.

15 ian. 2017 11:37:48
0

Puteți defini o constantă în fișierul de funcții al temei astfel:

if( !defined(THEME_IMG_PATH)){
   define( 'THEME_IMG_PATH', get_stylesheet_directory_uri() . '/site/images' );
  }

și apoi puteți folosi tag-ul img astfel

 <img src="<?php echo THEME_IMG_PATH; ?>/footLogo.png" style="padding: 0px!important; color:white">
15 ian. 2017 11:59:01