2013-02-26 26 views
0

我有一個客戶正在使用Restrict content pro。雖然客戶喜歡限制內容專業版,但有一個問題 - 他希望帖子在10天后自動更改爲付費用戶,而RCP(限制內容專業版)不提供此功能。有沒有人在這裏使用限制內容親?

即使使用試用帖也只會允許訂閱用戶或登錄用戶,所以我必須根據客戶需求進行修改。

因此,在帖子的訂閱級別上有默認選項「all」,如果您選擇該選項則意味着該帖子將向公衆開放,但如果您選擇另一個訂閱的訂閱級別說優質訂閱,帖子只對登錄用戶可見。

我希望此選項在發佈日期達到10天時自動更改,因此如果帖子還沒有10天,它將是免費的。但是,如果該職位達到10天,將是溢價。希望你能幫助我,這件事

這裏是原代碼:

case 'levels': 
echo '<select name="', $field['id'] . '" id="' . $field['id'] . '">'; 

$levels = rcp_get_subscription_levels('all', false); 
echo '<option value="all">' . __('All', 'rcp') . '</option>'; 
foreach ($levels as $level) { 
    echo '<option value="' . $level->id . '"', $meta == $level->id ? ' selected="selected"' : '', '>',  $level->name, '</option>'; 
} 
echo '</select>'; 
break; 

這裏是一個不工作我修改後的代碼:

//modification end here 
$pubdate = the_date(); 
if (($pubdate < 10) == true){ 
    $levels = rcp_get_subscription_levels('all', false); 
    echo '<option value="all">' . __('All', 'rcp') . '</option>'; 
} else{ 
    foreach ($levels as $level) { 
     echo '<option value="' . $level->id . '"', $meta == $level->id ? ' selected="selected"' : '',  '>',  $level->name, '</option>'; 
    } 
} 
//modification end here 
+1

你可以在文字上添加一些標點符號和大寫字母嗎?我很難閱讀它。 – 2013-02-26 17:19:47

+1

@John新增了可以做到的編輯。你能批准嗎? – APerson 2013-02-26 17:22:32

+0

看起來好多了,謝謝。 – 2013-02-26 17:27:58

回答

0

我認爲這裏的問題,您的解決方案是您試圖更新管理員界面(用於選擇是否希望您的內容僅由會員支付或可訪問)。換句話說,你試圖在錯誤的地方破解代碼。

相反,當您選擇Restrict Content Pro的屬性時,我會查看正在保存的自定義字段。我只是在我的一個網站上運行一個測試,這個測試也是由Restrict Content Pro提供支持,創建一個虛擬帖子並將其配置爲僅限付費用戶和特定的用戶計劃後,我注意到有一些自定義字段值被保存(您可以使用phpMyAdmin或任何其他數據庫接口在數據庫中看到這一點,爲什麼我建議使用這種方法而不是WordPress中的自定義字段元標題是因爲有一些字段被序列化並且不在元框中顯示)。

在我的測試中,我注意到以下值爲虛擬帖子更改。

Custom Field Name  Example of Value 
---------------------------------------- 
rcp_access_level  None 
rcp_subscription_level a:1:{i:0;s:1:"2";} 
rcp_user_level   All 

因此,爲了實現你需要什麼,我想嘗試運行在搜索中的10天的帖子WordPress的cron作業的腳本,然後爲後相應地更新這些自定義字段值。

爲了看看要改變什麼,我建議看看 restrict-content-pro \ includes \ admin \ metabox.php第140行代碼(**這可能會有所不同你的版本)來查看函數rcp_save_meta_data($ post_id)中的內容。

特別是您可能需要更新rcp_subscription_level值以使用您希望內容受保護的計劃級別。相反,如果您希望您的內容受到用戶級別的保護,請更新​​。