2017-10-09 9 views
0

こんにちは、私の記事を読んでいただきありがとうございます。WHMCSと変数でホームリンクを変更する

私はWHMCSをアド・ドン・マルチブランドと一緒にインストールしました。これは、1つのインストールでWHMCSに複数のブランドがあることを意味します。 URLは常にhttp://billing.branddomain.com/です。それらのすべてには、http://www.branddomain.com/のメイン静的ウェブサイトがあります。

私はホームボタンが静的なウェブサイトを指し示すようにしたいが、問題はブランドごとに異なるので、静的なURLをコードに入れられないことである。 したがってPHPで私はアドレスバーからURLを取り除き、 '請求'を削除して 'www'に置き換えます。 WHMCSのメインメニューのホームリンクURLをこの場所に変更しようとしています。これは、ディレクトリWHMCSにPHPファイルを作成することによって行われます/ /フック

<?php 
$aedit_just_domain = preg_replace("/^(.*\.)?([^.]*\..*)$/", "$2", $_SERVER['HTTP_HOST']); 
$aedit_homepageurl = "http://www.". $aedit_just_domain ."/"; 

use WHMCS\View\Menu\Item as MenuItem; 

add_hook('ClientAreaPrimaryNavbar', 1, function (MenuItem $primaryNavbar) 
{ 
    $redirect = $aedit_homepageurl; 
    if (!is_null($primaryNavbar->getChild('Home'))) { 
      $primaryNavbar->getChild('Home') 
         ->setURI($redirect); 
    } 
}); 

私はそこに変数を入れて傾ける何らかの理由として、このdoesntの作業が含まれています。 私が行うと:

<?php 
use WHMCS\View\Menu\Item as MenuItem; 

add_hook('ClientAreaPrimaryNavbar', 1, function (MenuItem $primaryNavbar) 
{ 
    $redirect = 'http://www.google.com/'; 
    if (!is_null($primaryNavbar->getChild('Home'))) { 
      $primaryNavbar->getChild('Home') 
         ->setURI($redirect); 
    } 
}); 

これが作業を行いますが、今の静的URL www.google.comで動作します。 明らかに、$ aedit_homepageurlのようにこれを変数にする必要があります。

私にこれを手伝ってくれる人がいますか?

答えて

1

$aedit_homepageurlは、デフォルトでは関数内でアクセスできません。 あなたは2つのオプションがあります:

1 - あなたは$aedit_homepageurl変数にアクセスするためのグローバルなキーワードを使用することができます。

<?php 
add_hook('ClientAreaPrimaryNavbar', 1, function (MenuItem $primaryNavbar) 
{ 
    $aedit_just_domain = preg_replace("/^(.*\.)?([^.]*\..*)$/", "$2", $_SERVER['HTTP_HOST']); 
    $aedit_homepageurl = "http://www.". $aedit_just_domain ."/"; 

    $redirect = $aedit_homepageurl; 
    if (!is_null($primaryNavbar->getChild('Home'))) { 
      $primaryNavbar->getChild('Home') 
         ->setURI($redirect); 
    } 
}); 
+0

どうもありがとう:

<?php $aedit_just_domain = preg_replace("/^(.*\.)?([^.]*\..*)$/", "$2", $_SERVER['HTTP_HOST']); $aedit_homepageurl = "http://www.". $aedit_just_domain ."/"; use WHMCS\View\Menu\Item as MenuItem; add_hook('ClientAreaPrimaryNavbar', 1, function (MenuItem $primaryNavbar) { global $aedit_homepageurl; $redirect = $aedit_homepageurl; if (!is_null($primaryNavbar->getChild('Home'))) { $primaryNavbar->getChild('Home') ->setURI($redirect); } }); 

2 - に関数内でトップ2行が移動します。私はそれを第2の選択肢と一緒に作った。私は自分自身についてそれについて考えなかったと信じられない。私はすでに20時間困惑した。あなたは別の20時間の困惑から私を救った。 – ManouHH

+0

ようこそ。 – wesamly

関連する問題