2016-05-08 7 views
-3

Ich habe die ganze Website/Web mit, um das zu erreichen, ohne Glück. Ich bin auch kein Entwickler, und die wenigen Informationen, die ich bekommen konnte, haben mir auch nicht geholfen.PHP: Summiere das Ergebnis einiger "echo do_shortcode"

Die Situation: Ich habe einige Wordpress-Plugins, mit denen ich einige Zahlen mit Shortcode generieren kann. Zum Beispiel habe ich [shortcode1] von einem Plugin, und [shortcode2] von einem anderen, jedes von ihnen gibt eine dynamische Zahl zurück.

Ich benutze PHP in meinen Seiten, um diese Zahl anzuzeigen, mit einem einfachen "php echo do_shortcode ('[shortcode1]');" Gleiches gilt für Shortcode 2, und es funktioniert gut.

Ich versuche, den Wert, der von diesen 2 shortocdes zurückkehrt, zusammenzufassen. Sagen wir shortcode1 = 10 und shortcode2 = 20, ich muss "30" anzeigen.

Ich habe versucht, die "do_shortcodes" in Argumente zu senden, dann mit "sum" oder "+", aber nichts davon funktionierte, und eigentlich macht es Sinn, weil ich dabei den Shortcode diesem Argument zuschreibe , nicht das tatsächliche Ergebnis davon. Da ich dies wusste, versuchte ich stattdessen "echo do_shortcode" auf das Argument anzuwenden, um das Ergebnis anstelle des eigentlichen Shortcodes zu speichern. Aber anscheinend ist es nicht richtig, es zu tun, oder ich habe nicht die Art, es zu tun.

Ich hoffe, ich könnte richtig erklären, jede Idee, wie ich das erreichen könnte?

Vielen Dank im Voraus (etwas wünschen könnte es eine Antwort so einfach wie 1 + 1 = 2 :) sein)

+0

Sie benötigen, um Ihren Code zu zeigen, für Sie SHORTCODE und das Ergebnis (HTML sichtbar als auch) – David

+0

Hallo David, der Code verwende ich die Nummer anzuzeigen: echo do_shortcode (‘ [Facebook Anhänger]');. Als Ergebnis wird eine Zahl zurückgegeben, sagen wir 10. Aber morgen kann es 11, 12, 13 sein ... die vom Kurzwahlcode zurückgegebene Zahl ist dynamisch. –

+0

die tatsächliche Zahl ist egal, was wichtig ist, warum können Sie es nicht hinzufügen, ich meine, wenn es eine Zahl zurückgibt, ist es eine Zahl, do_shortcode ('[etwas]') + do_shortcode ('[etwas]') sollte geben Du hast eine Nummer zurück. Aber wie können wir nur raten, was Ihr Shortcode zurückgibt, es wird nicht so gelöst werden! – David

Antwort

0

Sie nur Zahlen wie dies zu gewährleisten, aber do_shortcode() ist der falsche Ansatz für das, was Sie wollen in den meisten Fällen tun. Das Folgende ist nicht effizient in Bezug auf die Programmierung, sondern wird tun, was Sie wollen. Sie könnten einfach eine Variable generieren und diese verwenden, aber ich nehme an, Sie haben Ihre Gründe. Wie auch immer ...

$a = (int) preg_replace('/[^0-9]/','',do_shortcode('[whatever]')); 
$b = (int) preg_replace('/[^0-9]/','',do_shortcode('[whateverb]')); 

$c= $a + $b; 

echo $c;