本文整理汇总了PHP中WYSIJA::get_permalink方法的典型用法代码示例。如果您正苦于以下问题:PHP WYSIJA::get_permalink方法的具体用法?PHP WYSIJA::get_permalink怎么用?PHP WYSIJA::get_permalink使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WYSIJA
的用法示例。
在下文中一共展示了WYSIJA::get_permalink方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: unsubscribe
function unsubscribe()
{
$model_config = WYSIJA::get('config', 'model');
// we need to call the translation otherwise it will not be loaded and translated
$model_config->add_translated_default();
$this->title = $model_config->getValue('unsubscribed_title');
if (!isset($model_config->values['unsubscribed_title'])) {
$this->title = __("You've unsubscribed!", WYSIJA);
}
$this->optional_subtitle = $model_config->getValue('unsubscribed_subtitle');
if (!isset($model_config->values['unsubscribed_subtitle'])) {
$this->optional_subtitle = __("Great, you'll never hear from us again!", WYSIJA);
}
$undo_paramsurl = array('wysija-page' => 1, 'controller' => 'confirm', 'action' => 'undounsubscribe', 'wysija-key' => $_REQUEST['wysija-key']);
if (!isset($_REQUEST['demo'])) {
if ($this->_testKeyuser()) {
$statusint = (int) $this->userData['details']['status'];
if ($model_config->getValue('confirm_dbleoptin') && $statusint > 0 || !$model_config->getValue('confirm_dbleoptin') && $statusint >= 0) {
$listids = $this->helperUser->unsubscribe($this->userData['details']['user_id']);
$this->helperUser->uid = $this->userData['details']['user_id'];
if ($model_config->getValue('emails_notified') && $model_config->getValue('emails_notified_when_unsub')) {
$this->helperUser->_notify($this->userData['details']['email'], false, $listids);
}
} else {
$this->title = __('You are already unsubscribed.', WYSIJA);
return false;
}
}
} else {
$undo_paramsurl['demo'] = 1;
}
$link_undo = WYSIJA::get_permalink($model_config->getValue('unsubscribe_page'), $undo_paramsurl);
$this->undo_unsubscribe = str_replace(array('[link]', '[/link]'), array('<a href="' . $link_undo . '">', '</a>'), '<p><b>' . __('You made a mistake? [link]Undo unsubscribe[/link].', WYSIJA)) . '</b></p>';
return true;
}
示例2: getVIB
function getVIB($dataEmail)
{
if (false && isset($dataEmail['params']['vib_id'])) {
return WYSIJA::get_permalink($dataEmail['params']['vib_id'], false);
} else {
$paramsurl = array('wysija-page' => 1, 'controller' => "email", 'action' => "view", 'email_id' => $dataEmail["email_id"]);
$modelConf =& WYSIJA::get("config", "model");
return WYSIJA::get_permalink($modelConf->getValue("confirm_email_link"), $paramsurl);
}
}
示例3: getPreviewLink
/**
* return the online version link of a newsletter
* @param int $email_id
* @param string $text
* @param string $urlOnly
* @return string
*/
function getPreviewLink($email_id, $text = false, $urlOnly = true)
{
if (!$text) {
$text = __('View', WYSIJA);
}
$this->reset();
$modelConf =& WYSIJA::get('config', 'model');
$params = array('wysija-page' => 1, 'controller' => 'email', 'action' => 'view', 'email_id' => $email_id);
$fullurl = WYSIJA::get_permalink($modelConf->getValue('confirm_email_link'), $params);
if ($urlOnly) {
return $fullurl;
}
return '<a href="' . $fullurl . '" target="_blank">' . $text . '</a>';
}
示例4: genIframe
function genIframe($instance, $externalsite = false)
{
$now = time();
if (isset($instance['preview'])) {
unset($instance['preview']);
}
$encodedForm = base64_encode(json_encode($instance));
$paramsurl = array('wysija-page' => 1, 'controller' => 'subscribers', 'action' => 'wysija_outter');
if (isset($this->number) && $this->number > 0) {
$paramsurl['widgetnumber'] = $this->number;
$idframe = $this->number;
} else {
$paramsurl['fullWysijaForm'] = $encodedForm;
$idframe = rand(45000, 99999);
}
$modelConf =& WYSIJA::get('config', 'model');
$onloadattr = '';
if ($externalsite) {
$paramsurl['external_site'] = 1;
} else {
$onloadattr = 'onload="jQuery.WYSIJA_iframeloadhandler(this);"';
}
/*if(WYSIJA::is_plugin_active('wp-super-cache/wp-cache.php')){
global $cache_page_secret;
$paramsurl['donotcachepage']=$cache_page_secret;
}*/
//the final tru allow for shorter url
$fullurl = WYSIJA::get_permalink($modelConf->getValue('confirm_email_link'), $paramsurl, true);
//return '<iframe width="100%" scrolling="no" frameborder="0" src="'.$fullurl.'" name="wysija-'.$now.'" class="iframe-wysija" id="wysija-'.$idframe.'" vspace="0" tabindex="0" style="position: static; top: 0pt; margin: 0px; border-style: none; height: 330px; left: 0pt; visibility: visible;" marginwidth="0" marginheight="0" hspace="0" allowtransparency="true" title="'.__('Subscription Wysija',WYSIJA).'"></iframe>';
return '<iframe ' . $onloadattr . ' width="100%" scrolling="no" frameborder="0" src="' . $fullurl . '" name="wysija-' . $now . '" class="iframe-wysija" id="wysija-' . $idframe . '" vspace="0" tabindex="0" style="position: static; top: 0pt; margin: 0px; border-style: none; height: 330px; left: 0pt; visibility: visible;" marginwidth="0" marginheight="0" hspace="0" allowtransparency="true" title="' . __('Subscription Wysija', WYSIJA) . '"></iframe>';
//$fieldHTML='<div class="widget-control-actions">';
}
示例5: get_module_link
/**
* Get unique link to the module and hook. This link will be displayed as an independent page and actually it renders [wysijap] postype
* @param string $module_name
* @param string $hook_name
* @param array $params (key => value, key => value)
* @return type
*/
public static function get_module_link($module_name, $hook_name, $extended_plugin = 'wysija-newsletters', array $params = array())
{
$model_config = WYSIJA::get('config', 'model');
$params = array_merge($params, array('wysija-page' => 1, 'controller' => 'module', 'action' => 'init', 'module' => $module_name, 'extension' => $extended_plugin, 'hook' => $hook_name));
return WYSIJA::get_permalink($model_config->getValue('confirm_email_link'), $params);
}
示例6: old_get_new_link_for_expired_links
/**
* function used to generate the links if they are not valid anymore,
* will be needed for old version of the plugin still using old unsafe links
* @param int $user_id
* @param int $email_id
* @return string
*/
function old_get_new_link_for_expired_links($user_id, $email_id)
{
$params = array('wysija-page' => 1, 'controller' => 'confirm', 'action' => 'resend', 'user_id' => $user_id, 'email_id' => $email_id);
$model_config = WYSIJA::get('config', 'model');
return WYSIJA::get_permalink($model_config->getValue('confirm_email_link'), $params);
}
示例7: export
public function export($form_id, $type)
{
switch ($type) {
case 'iframe':
$url_params = array('wysija-page' => 1, 'controller' => 'subscribers', 'action' => 'wysija_outter', 'wysija_form' => $form_id);
$url_params['external_site'] = 1;
$model_config = WYSIJA::get('config', 'model');
$source_url = WYSIJA::get_permalink($model_config->getValue('confirm_email_link'), $url_params, true);
return '<iframe width="100%" scrolling="no" frameborder="0" src="' . $source_url . '" class="iframe-wysija" vspace="0" tabindex="0" style="position: static; top: 0pt; margin: 0px; border-style: none; height: 330px; left: 0pt; visibility: visible;" marginwidth="0" marginheight="0" hspace="0" allowtransparency="true" title="' . __('Subscription Wysija', WYSIJA) . '"></iframe>';
break;
case 'php':
$output = array('$widgetNL = new WYSIJA_NL_Widget(true);', 'echo $widgetNL->widget(array(\'form\' => ' . (int) $form_id . ', \'form_type\' => \'php\'));');
return join("\n", $output);
break;
case 'html':
//need some language for the validation
$helper_toolbox = WYSIJA::get('toolbox', 'helper');
$wp_language_code = $helper_toolbox->get_language_code();
$wysija_version = WYSIJA::get_version();
$scripts_to_include = '<!--START Scripts : this is the script part you can add to the header of your theme-->' . "\n";
$scripts_to_include .= '<script type="text/javascript" src="' . includes_url() . 'js/jquery/jquery.js' . '?ver=' . $wysija_version . '"></script>' . "\n";
if (file_exists(WYSIJA_DIR . 'js' . DS . 'validate' . DS . 'languages' . DS . 'jquery.validationEngine-' . $wp_language_code . '.js')) {
$scripts_to_include .= '<script type="text/javascript" src="' . WYSIJA_URL . 'js/validate/languages/jquery.validationEngine-' . $wp_language_code . '.js' . '?ver=' . $wysija_version . '"></script>' . "\n";
} else {
$scripts_to_include .= '<script type="text/javascript" src="' . WYSIJA_URL . 'js/validate/languages/jquery.validationEngine-en.js' . '?ver=' . $wysija_version . '"></script>' . "\n";
}
$scripts_to_include .= '<script type="text/javascript" src="' . WYSIJA_URL . 'js/validate/jquery.validationEngine.js' . '?ver=' . $wysija_version . '"></script>' . "\n";
$scripts_to_include .= '<script type="text/javascript" src="' . WYSIJA_URL . 'js/front-subscribers.js' . '?ver=' . $wysija_version . '"></script>' . "\n";
$scripts_to_include .= '<script type="text/javascript">
/* <![CDATA[ */
var wysijaAJAX = {"action":"wysija_ajax","controller":"subscribers","ajaxurl":"' . admin_url('admin-ajax.php', 'absolute') . '","loadingTrans":"' . __('Loading...', WYSIJA) . '"};
/* ]]> */
</script>';
$scripts_to_include .= '<script type="text/javascript" src="' . WYSIJA_URL . 'js/front-subscribers.js?ver=' . $wysija_version . '"></script>' . "\n";
$scripts_to_include .= '<!--END Scripts-->' . "\n" . "\n";
//enqueue the scripts
$html_result = $scripts_to_include;
// add the html for the form
$widget_NL = new WYSIJA_NL_Widget(true);
$html_result .= $widget_NL->widget(array('form' => (int) $form_id, 'form_type' => 'html'));
return $html_result;
break;
case 'shortcode':
return '[wysija_form id="' . (int) $form_id . '"]';
break;
}
}
示例8: view_in_browser_link
/**
* TODO should this method really be here?
* It is used when rendering an email in the editor or before sending it
* @param boolean $editor if the link is in the editor, then it will be a demo link
* @return type
*/
function view_in_browser_link($editor = false)
{
$data = array();
if (!$this->getValue('viewinbrowser')) {
return $data;
}
if (isset($this->values['viewinbrowser_linkname'])) {
// Grab the value for the view in browser link
$link = $this->values['viewinbrowser_linkname'];
}
// If we don't have the value from DB load a default
if (!isset($link) || empty($link) || !$link) {
$link = esc_attr__('Display problems? [link]View this newsletter in your browser.[/link]', WYSIJA);
}
// if we spot a link tag in the text we decompose the text in different parts pre rendering
if (strpos($link, '[link]') !== false) {
$linkpre = explode('[link]', $link);
$data['pretext'] = $linkpre[0];
$linkpost = explode('[/link]', $linkpre[1]);
$data['posttext'] = $linkpost[1];
$data['label'] = $linkpost[0];
$data['link'] = '[view_in_browser_link]';
} else {
$data['pretext'] = $data['posttext'] = '';
$data['label'] = $link;
$data['link'] = '[view_in_browser_link]';
}
if ($editor) {
$params_url = array('wysija-page' => 1, 'controller' => 'email', 'action' => 'view', 'email_id' => 0, 'user_id' => 0);
if (!empty($_REQUEST['id'])) {
$params_url['email_id'] = (int) $_REQUEST['id'];
}
$data['link'] = WYSIJA::get_permalink($this->getValue('confirm_email_link'), $params_url);
}
return $data;
}
示例9: viewInBrowserLink
/**
* TODO should this method really be here?
* It is used when rendering an email in the editor or before sending it
* @param boolean $editor if the link is in the editor, then it will be a demo link
* @return type
*/
function viewInBrowserLink($editor = false)
{
$data = array();
if ($this->getValue('viewinbrowser')) {
$vib_link_text = '';
// we us the user defined value or the predefined text
if (!isset($this->values['viewinbrowser_linkname'])) {
$vib_link_text = $this->cleanTrans(__('Display problems? [link]View this newsletter in your browser.[/link]', WYSIJA));
} else {
$vib_link_text = $this->getValue('viewinbrowser_linkname');
}
// if we spot a link tag in the text we decompose the text in different parts pre rendering
if (strpos($vib_link_text, '[link]') !== false) {
$linkpre = explode('[link]', $vib_link_text);
$data['pretext'] = $linkpre[0];
$linkpost = explode('[/link]', $linkpre[1]);
$data['posttext'] = $linkpost[1];
$data['label'] = $linkpost[0];
$data['link'] = '[view_in_browser_link]';
}
}
if ($editor) {
$params_url = array('wysija-page' => 1, 'controller' => 'email', 'action' => 'view', 'email_id' => 0, 'user_id' => 0);
if (!empty($_REQUEST['id'])) {
$params_url['email_id'] = (int) $_REQUEST['id'];
}
$data['link'] = WYSIJA::get_permalink($this->getValue('confirm_email_link'), $params_url);
}
return $data;
}
示例10: getVIB
/**
* get view in browser link
* @param array $dataEmail
* @return string url
*/
function getVIB($dataEmail)
{
if (false && isset($dataEmail['params']['vib_id'])) {
return WYSIJA::get_permalink($dataEmail['params']['vib_id'], false);
} else {
$paramsurl = array('wysija-page' => 1, 'controller' => 'email', 'action' => 'view', 'email_id' => $dataEmail['email_id']);
$modelConf = WYSIJA::get('config', 'model');
return WYSIJA::get_permalink($modelConf->getValue('confirm_email_link'), $paramsurl);
}
}
示例11: viewInBrowserLink
/**
* TODO should this method really be here? It is used when rendering an email or when sending one
* @param type $editor
* @return type
*/
function viewInBrowserLink($editor=false){
$data=array();
if($this->getValue('viewinbrowser')){
$linkname='';
if(!isset($this->values['viewinbrowser_linkname'])) $linkname=$this->cleanTrans(__('Display problems? [link]View this newsletter in your browser.[/link]',WYSIJA));
else $linkname=$this->getValue('viewinbrowser_linkname');
if(strpos($linkname, '[link]')!==false){
$linkpre=explode('[link]', $linkname);
$data['pretext']=$linkpre[0];
$linkpost=explode('[/link]', $linkpre[1]);
$data['posttext']=$linkpost[1];
$data['label']=$linkpost[0];
$data['link']='[view_in_browser_link]';
}
}
$email_id=0;
if($editor){
$paramsurl=array(
'wysija-page'=>1,
'controller'=>"email",
'action'=>"view",
'email_id'=>$email_id,
'user_id'=>0
);
if($email_id==0) $paramsurl['email_id']=$_REQUEST['id'];
$data['link']=WYSIJA::get_permalink($this->getValue('confirm_email_link'),$paramsurl);
}
return $data;
}
示例12: analyse
//.........这里部分代码省略.........
$this->subscriberClass =& WYSIJA::get('user', 'model');
$this->subscriberClass->getFormat = OBJECT;
$receiver = $this->subscriberClass->getOne($user_id);
switch ($recordedUrl) {
case '[unsubscribe_link]':
$link = $this->subscriberClass->getUnsubLink($receiver, true);
$statusEmailUserStat = 3;
break;
case '[subscriptions_link]':
$link = $this->subscriberClass->getEditsubLink($receiver, true);
break;
case '[view_in_browser_link]':
$modelEmail =& WYSIJA::get('email', 'model');
$dataEmail = $modelEmail->getOne(false, array('email_id' => $email_id));
$emailH =& WYSIJA::get('email', 'helper');
$link = $emailH->getVIB($dataEmail);
break;
}
$decodedUrl = $link;
} else {
if (strpos($decodedUrl, 'http://') === false && strpos($decodedUrl, 'https://') === false) {
$decodedUrl = 'http://' . $decodedUrl;
}
/*check that there is no broken unsubscribe link such as http://[unsubscribe_link] */
if (strpos($decodedUrl, '[unsubscribe_link]') !== false) {
$this->subscriberClass =& WYSIJA::get('user', 'model');
$this->subscriberClass->getFormat = OBJECT;
$receiver = $this->subscriberClass->getOne($user_id);
$decodedUrl = $this->subscriberClass->getUnsubLink($receiver, true);
}
if (strpos($decodedUrl, '[view_in_browser_link]') !== false) {
$paramsurl = array('wysija-page' => 1, 'controller' => 'email', 'action' => 'view', 'email_id' => $email_id, 'user_id' => 0);
$config =& WYSIJA::get('config', 'model');
$link = WYSIJA::get_permalink($config->getValue('confirm_email_link'), $paramsurl);
$decodedUrl = $link;
}
}
if (isset($_REQUEST['debug'])) {
echo '<h2>isset decoded url ' . $decodedUrl . '</h2>';
}
$modelEmailUS =& WYSIJA::get('email_user_stat', 'model');
$exists = $modelEmailUS->getOne(false, array('equal' => array('email_id' => $email_id, 'user_id' => $user_id), 'less' => array('status' => $statusEmailUserStat)));
$dataupdate = array('status' => $statusEmailUserStat);
if ($exists && isset($exists['opened_at']) && !(int) $exists['opened_at']) {
$dataupdate['opened_at'] = time();
}
//,'opened_at'=>time()
$modelEmailUS->reset();
$modelEmailUS->colCheck = false;
$modelEmailUS->update($dataupdate, array('equal' => array('email_id' => $email_id, 'user_id' => $user_id), 'less' => array('status' => $statusEmailUserStat)));
} else {
if (in_array($recordedUrl, array('[unsubscribe_link]', '[subscriptions_link]', '[view_in_browser_link]'))) {
$modelU =& WYSIJA::get('user', 'model');
$modelU->getFormat = OBJECT;
$objUser = $modelU->getOne(false, array('wpuser_id' => get_current_user_id()));
switch ($recordedUrl) {
case '[unsubscribe_link]':
$link = $modelU->getConfirmLink($objUser, 'unsubscribe', false, true) . '&demo=1';
break;
case '[subscriptions_link]':
$link = $modelU->getConfirmLink($objUser, 'subscriptions', false, true) . '&demo=1';
//$link=$this->subscriberClass->getEditsubLink($receiver,true);
break;
case 'view_in_browser_link':
if (!$email_id) {
$email_id = $_REQUEST['id'];
示例13: getConfirmLink
function getConfirmLink($userObj = false, $action = "subscribe", $text = false, $urlOnly = false)
{
if (!$text) {
$text = __("Click here to subscribe", WYSIJA);
}
$userspreview = false;
//if($action=='subscriptions')dbg($userObj);
if (!$userObj) {
//preview mode
$userObj = $this->getCurrentSubscriber();
$userspreview = true;
}
$params = array('wysija-page' => 1, 'controller' => "confirm");
if ($userObj && isset($userObj->keyuser)) {
if (!$userObj->keyuser) {
$this->getKeyUser($userObj);
}
$this->reset();
$params['wysija-key'] = $userObj->keyuser;
}
$params['action'] = $action;
$modelConf =& WYSIJA::get("config", "model");
if ($userspreview) {
$params['demo'] = 1;
}
$fullurl = WYSIJA::get_permalink($modelConf->getValue("confirm_email_link"), $params);
if ($urlOnly) {
return $fullurl;
}
return '<a href="' . $fullurl . '" target="_blank">' . $text . '</a>';
}
示例14: openrate_replaceusertags
function openrate_replaceusertags($email,$user){
//$typemails=array('news','autonews','followup')
$typemails=array(1,2,3);
if(empty($email->type) OR !in_array($email->type,$typemails) OR strpos($email->body,'[nostatpicture]')){
$email->body = str_replace(array('[statpicture]','[nostatpicture]'),'',$email->body);
return;
}
$widths = range(1, 50);
shuffle($widths);
$heights = range(1, 3);
shuffle($heights);
/*$altTxt=array(__('Footer image',WYSIJA),__('Footer',WYSIJA),__('My footer image',WYSIJA));
shuffle($altTxt);*/
$widthsize = $widths[0];
$heightsize = $heights[0];
$width = empty($widthsize) ? '' : ' width="'.$widthsize.'" ';
$height = empty($heightsize) ? '' : ' height="'.$heightsize.'" ';
$modelConf=WYSIJA::get('config','model');
$args = array();
$args['email_id'] = $email->email_id;
$args['user_id'] = $user->user_id;
$args['controller'] = 'stats';
$forbiddenparams=$modelConf->getValue('params_forbidden');
if(isset($forbiddenparams['controller']['stats'])) $args['controller'] = $forbiddenparams['controller']['stats'];
$args['action'] = 'analyse';
$args['wysija-page'] = 1;
$args['render'] = 1;
$mytracker=WYSIJA::get_permalink($modelConf->getValue("confirm_email_link"),$args);
$statPicture = '<img alt="" src="'.$mytracker.'" border="0" '.$height.$width.'/>';
if(strpos($email->body,'[statpicture]')) $email->body = str_replace('[statpicture]',$statPicture,$email->body);
elseif(strpos($email->body,'</body>')) $email->body = str_replace('</body>',$statPicture.'</body>',$email->body);
else $email->body .= $statPicture;
}
示例15: getResendLink
function getResendLink($userid, $email_id)
{
$params = array('wysija-page' => 1, 'controller' => 'confirm', 'action' => 'resend', 'user_id' => $userid, 'email_id' => $email_id);
$modelConf =& WYSIJA::get('config', 'model');
return WYSIJA::get_permalink($modelConf->getValue('confirm_email_link'), $params);
}