Permalänk
Medlem

PHP: kontaktera ihop strängar

hej!

jag har lite problem att kontaktera ihop strängar i PHP för wordpress.

$templateURL = get_template_directory_uri(); $htmltext= array(); $htmltext[] = '<a target="_blank" href="https://www.example.com">' . '<img alt="test" class="test" src="' . $templateURL . '/img/bild1.jpg"/>' . '</a>';

jag får inte till det heller utan att använda variabeln $templateURL. Det är säkert något enkelt fel som jag gör. Någon som har någe tips?

Permalänk
Medlem

$templateURL = get_template_directory_uri();
Du skapar en variabel som heter templateURL

$htmltext= array();
$htmltext[] = '<a target="_blank" href="https://www.example.com">'
. '<img alt="test" class="test" src="' . $templateURL . '/img/bild1.jpg"/>'
. '</a>';

Du skapar en array med en associativ post "0", $htmltext[0] som innehåller din html-text. Den ser ut så här:

<a target="_blank" href="https://www.example.com"><img alt="test" class="test" src="' . $templateURL . '/img/bild1.jpg"/></a>

Edit: Ah, fel. Jag missade variabeln i texten.

Självklart kommer innehållet i $templateURL att läggas in i strängen. Har du undersökt hur den ser ut, om du faktiskt har en text i variabeln?

Permalänk
Medlem
Skrivet av Balconette:

Edit: Ah, fel. Jag missade variabeln i texten.

Självklart kommer innehållet i $templateURL att läggas in i strängen. Har du undersökt hur den ser ut, om du faktiskt har en text i variabeln?

det blev bara en tom sida, i värsta fall php error, troligtvis så berodde phperror på något syntax fel när jag skulle loopa igenom arrayen med foreach( ...)

så jag lagade loopen.
därefter var det en bugg i mitt wordpress-tema som ställde till det också som gjorde att allting kraschade, som jag lagade.

därefter så provade jag att göra saker och ting lite enklare, så jag tog bort $templateURL inuti koden och hårdkodade allting.

class="" namnet hade jag faktiskt hela tiden haft satt till class="reklam", och koden i mitt första inlägg var lite mer exempelkod.

Nu kommer det lustiga, förbered er!
av någon knepig anledning så bytte jag ut class="reklam" mot class="reklamvisning"
och då fungerade det plötligt och bilden dök upp på sidan, i denna gång med länk/adress hårdkodat. Wow...topppen! allting fungerar!

Så då lägger jag in 2st bilder till i arrayen, totalt ska 3st reklambilder visas som php ska echo ut på sidan efter den har blandat ordningen med shuffle.

Så allting fungerar alltså kanon nu!
Vad gör jag då?...jo jag provar att byta ut class="reklamvisning" igen mot class=reklam" som jag ursprungligen använt och då vägrar bilderna att visa sig.

Jag vet hur fruktansvärt ABSURT detta låter, men wordpress gillar tydligen inte ordet "reklam", och då har jag sökt överallt mina filer för att se om jag använt ordet "reklam" på fler ställen och att det är det som orsakar det men icke. Wordpress gillar bara inte ordet 'reklam'

Permalänk
Medlem
Skrivet av Lexdale:

det blev bara en tom sida, i värsta fall php error, troligtvis så berodde phperror på något syntax fel när jag skulle loopa igenom arrayen med foreach( ...)

så jag lagade loopen.
därefter var det en bugg i mitt wordpress-tema som ställde till det också som gjorde att allting kraschade, som jag lagade.

därefter så provade jag att göra saker och ting lite enklare, så jag tog bort $templateURL inuti koden och hårdkodade allting.

class="" namnet hade jag faktiskt hela tiden haft satt till class="reklam", och koden i mitt första inlägg var lite mer exempelkod.

Nu kommer det lustiga, förbered er!
av någon knepig anledning så bytte jag ut class="reklam" mot class="reklamvisning"
och då fungerade det plötligt och bilden dök upp på sidan, i denna gång med länk/adress hårdkodat. Wow...topppen! allting fungerar!

Så då lägger jag in 2st bilder till i arrayen, totalt ska 3st reklambilder visas som php ska echo ut på sidan efter den har blandat ordningen med shuffle.

Så allting fungerar alltså kanon nu!
Vad gör jag då?...jo jag provar att byta ut class="reklamvisning" igen mot class"reklam" som jag ursprungligen använt och då vägrar bilderna att visa sig.

Jag vet hur fruktansvärt ABSURT detta låter, men wordpress gillar tydligen inte ordet "reklam", och då har jag sökt överallt mina filer för att se om jag använt ordet "reklam" på fler ställen och att det är det som orsakar det men icke. Wordpress gillar bara inte ordet 'reklam'

Nu är det säkert ett typo men självklart fungerar det dåligt om du skriver 'class"reklam"'

Lägg gärna upp mer kod så man har möjlighet att se var felet kan ligga!

Permalänk
Medlem

@Lexdale Det är inte så att du har någon form av adblocker igång?

Permalänk
Medlem
Skrivet av evirob:

Nu är det säkert ett typo men självklart fungerar det dåligt om du skriver 'class"reklam"'

Lägg gärna upp mer kod så man har möjlighet att se var felet kan ligga!

det var ett typo precis som du säger (åtgärdat nu)

Skrivet av Topp3:

@Lexdale Det är inte så att du har någon form av adblocker igång?

jo! och jag provade att stänga av den nu, och då funderade det att använda just ordet "reklam". reklamblockeraren "ublock" är tydligen väldigt effektiv haha

men det var roligt att du kunde lösa detta! jag har klivit mig i huvudet ett bra tag nu varför ordet "reklam" inte gick att använda. Jag hade aldrig kunnat komma på detta själv, så det var intressant att lära sig

Permalänk
Medlem

He, tänkte samma sak som Topp3. Frågan är bara om det är värt att klura ut en lösning eller lägga in det som du tänkt från början och sen bara ta att det blockeras av µblock Origin. Varför jag säger så är för att om du gör en egen lösning så kommer den bara fungera så länge som det tar för tillräckligt många användare att rapportera missad reklam. I det avseendet är det bättre att göra som Swec och be användaren stänga av adblock för att stötta sidan. Det sistnämnda kräver dock att du inte är för aggressiv med reklamen. ^^

Permalänk
Medlem

Hehe ja jag har själv suttit med liknande problem, man höll på att bli knäpp innan man insåg vad som var fel