Hallo,
bin grad an meinem ersten Plugin welches ich nach der Anleitung des Buches „Learning Joomla! 3 Extension Development“ erstellt habe und etwas für deutsche Telefonnummern angepasst habe.
Leider funktioniert das Plugin irgendwie nicht und ich komm nicht dahinter.
ich hab auch schon dinge welche bei Stackoverflow standen ausprobiert, leider ohne Erfolg.
http://stackoverflow.com/quest…-preg-replace-not-working
http://stackoverflow.com/quest…ce-function-joomla-plugin
Hier mein
Code
defined('_JEXEC') or die;
jimport('joomla.plugin.plugin');
class plgJFSContentClicktocall extends JPlugin {
function plgContentClicktocall( $subject, $params ) {
parent::__construct( $subject, $params );
}
public function onContentPrepare($context, $row, $params, $page = 0) {
//don't run this when the content is indexing
if ($context == 'com_finder.indexer') {
return true;
}
if (is_object($row)) {
echo $row->text;
$this->clickToCall($row->text, $params);
} else {
$this->clickToCall($row, $params);
}
return true;
}
protected function clickToCall($text, $params) {
$pattern = '~([+][0-9]{2,4}[ |/|\.|\-]?|00[0-9]{2,4}[ |/|\.|\-]?|0|\(0)([0-9]{2,5}[\)]?[ |/|\.|\-]?)([\- 0-9]+)~';
$replacement = '<a href="tel:$0">$0</a>';
$text = preg_replace($pattern, $replacement, $text);
return true;
}
}
Alles anzeigen
Vielleicht hat ja jemand noch eine Idee warum das nicht funktioniert.
Das regex sollte funktionieren. Das habe ich über https://regex101.com/r/9vqVSr/1 getestet und auch hier, http://ideone.com/p95OSm , wird das richtig ausgegeben.
Viele Grüße