Новости Joomla

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6.2PageBuilder Toolkit - это специализированный плагин для конструктора страниц Yootheme Pro, содержит набор различных утилит для ускорения процесса работы и отладки макета, множественные улучшения в интерфейсе, включая поддержку dark mode, подсказки, быстрая смена разрешения в окне просмотра и много чего еще.v.1.6.2 Что нового?- Индикатор статусов: теперь не просто показывает состояние запросов, но и делает автоматические попытки их отправки при кратковременных сбоях в сети, а если это не помогло, то переводит конструктор в ручной режим, что позволяет сохранит макет и настройки темы прежде чем вы потеряете все, что было сделано с момента последнего сохранения- Подсветка ошибок в макете: плагин анализирует код страницы и может автоматически подсвечивать data атрибуты с кучей мусора, которые попадают в код страницы при копипасте из Figma в TinyMCE (пригодится для старых макетов, в текущей работе плагин сам очищает код мусора). Также есть подсветка семантических ошибок сборки - дубли h1 тега на странице и вложенных друг в друга заголовков.- Улучшена поддержка будущего релиза Yootheme Pro 5 и редактора CodeMirror 6Плагин для русскоязычных пользователей доступен в каталоге расширений SovMart и распространяется за символическую плату (100р). Разработчики Joomla расширений и партнеры автора могут получить плагин бесплатно.Для работы плагина необходим конструктор страниц Yootheme Pro.Разработчик плагина - участник нашего сообщества Александр Судьбинов (@alexrevo), член официальной группы поддержки Yootheme Pro. Страница расширенияОписание на сайте автора@joomlafeed#joomla #yootheme

WT IndexNow плагин для Joomla - отправка страниц сайта на переиндексацию в поисковые системы

WT IndexNow плагин для Joomla - отправка страниц сайта на переиндексацию в поисковые системы

👩‍💻 WT IndexNow плагин для Joomla - отправка страниц сайта на переиндексацию в поисковые системы.Пакет плагинов, обеспечивающий ручную и автоматическую отправку url адресов Joomla в поисковые системы на переиндексацию по протоколу IndexNow. Согласно документации протокол поддерживают все крупнейшие поисковые системы, кроме Google. Протокол служит для получения от сайтов URL, которые нужно переиндексировать заново или проиндексировать в первый раз как можно быстрее. Отправка адресов сайта таким образом существенно ускорит индексацию нового или изменённого контента поисковыми системами.Поисковые системы по этому протоколу обмениваются друг с другом данными, поэтому отправив URL в одну из них вы сообщаете их сразу всем. Протокол IndexNow поддерживают:- Amazon- Microsoft Bing- Naver- Seznam.cz- Yandex - YepСуточный лимит URL - 10000 в сутки. Возможна отправка вручную и автоматически. Поддерживаются:- материалы и категории материалов Joomla- контакты и категории контактов Joomla- SW JProjects - компонент каталога расширений для Joomla- JoomShopping - компонент интернет-магазина для Joomla- Phoca Download - компонент каталога файлоа для Joomla- Phoca Cart - компонент интернет-магазина для Joomla- RadicalMart - компонент интернет-магазина для JoomlaПакет плагинов работает с Joomla 4.3+. Тестировался на Joomla 5 и Joomla 6.Смотреть видео:- ВК Видео- RuTubeСсылки:Страница расширенияGitHub расширенияРаздел Поддержка протокола IndexNow в справке Яндекса@joomlafeed#joomla #seo #indexnow

0 Пользователей и 1 Гость просматривают эту тему.
  • 10 Ответов
  • 3408 Просмотров
*

trifonov1992

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
Проблема с json_encode - Решено
« : 06.08.2012, 00:23:17 »
http://joomlaforum.ru/index.php/topic,224554.0.html - вот проблема, сори, что ссылкой...

Модераторы сори, что делаю копии...
« Последнее редактирование: 06.08.2012, 12:34:29 от trifonov1992 »
*

Marques

  • Завсегдатай
  • 1410
  • 190 / 9
  • Ctrl+F5
Re: Проблема с json_encode
« Ответ #1 : 06.08.2012, 03:55:40 »
Сорри, что задаю вопрос.
Сорри, что не понял,  что вообще вам надо.
Сорри, что не могу пока помочь вам, ибо ничего не понял.
Зануда перфекционист, не признающий авторитетов, ищет легкую работу за большие деньги - http://dtkp.ru/ s@dtkp.ru
*

trifonov1992

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
Re: Проблема с json_encode
« Ответ #2 : 06.08.2012, 10:43:56 »
Да нет проблем))) у меня json_encode, как я понял, кодирует кириллицу (так как она ее не понимает) в u****. Мне надо как-то сделать, чтобы было человеко-понятные буквы (тоесть кириллицу). Лазя в инете наткнулся на массу различного кода... который мне понравился, вставил в тему... потому что не понимаю куда его надо вставлять... Вот собственно и вся проблема
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Проблема с json_encode
« Ответ #3 : 06.08.2012, 10:48:44 »
php utf8 encode - закодили
php utf8_decode - раскодили
Что не получается?
*

trifonov1992

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
Re: Проблема с json_encode
« Ответ #4 : 06.08.2012, 11:06:43 »
а где это исправлять? или куда вставлять)))
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Проблема с json_encode
« Ответ #5 : 06.08.2012, 11:29:24 »
Тут лучше идея возникла. Лучше в base64 закодить имхо.
кодируем:
Код: php
$srt = base64_encode($str);
декодируем:
Код: php
$srt = base64_decode($str);
Вставлять в тех местах, где у вас джейсон кодируется/декодируется. До и после, соответственно.
*

trifonov1992

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
Re: Проблема с json_encode
« Ответ #6 : 06.08.2012, 11:39:44 »
Тут лучше идея возникла. Лучше в base64 закодить имхо.
кодируем:
Код: php
$srt = base64_encode($str);
декодируем:
Код: php
$srt = base64_decode($str);
Вставлять в тех местах, где у вас джейсон кодируется/декодируется. До и после, соответственно.

Тоесть мне надо каждый файл в фтп который содержит json_encode декодировать кодом
Код
$srt = base64_decode($str);
?? правильно я понял?
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Проблема с json_encode
« Ответ #7 : 06.08.2012, 11:46:24 »
При чём тут файл? У вас же объект кодируется в строку джейсоном и куда-то отдаётся? Или как? А файлы надо просто посредством, например, Notepad++ переконвертить в UTF8 без BOM
*

trifonov1992

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
Re: Проблема с json_encode
« Ответ #8 : 06.08.2012, 12:04:34 »
извини за тупость...Вот как я понял: к примеру есть файл: /components/com_adsmanager/views/edit/tmpl/default.php:


Код
<?php 
if (isset($this->warning_text))
echo $this->warning_text;
if (isset($this->error_text))
echo $this->error_text;
echo JText::_('ADSMANAGER_RULESREAD');
?>
<script type="text/javascript">
function CaracMax(text, max)
{
if (text.value.length >= max)
{
text.value = text.value.substr(0, max - 1) ;
}
}


function submitbutton(mfrm) {
var me = mfrm.elements;
var r = new RegExp("[\<|\>|\"|\'|\%|\;|\(|\)|\&|\+|\-]", "i");
var r_num = new RegExp("[^0-9\.,]", "i");
var r_email = new RegExp("^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]{2,}[.][a-zA-Z]{2,3}$" ,"i");

var errorMSG = '';
var iserror=0;

<?php
if (function_exists("loadEditFormCheck")){
loadEditFormCheck();
}
?>

<?php if ($this->nbcats > 1)
{
?>
var form = document.adminForm;
var srcList = eval( 'form.selected_cats' );
var srcLen = srcList.length;
if (srcLen == 0)
{
errorMSG += <?php echo json_encode(JText::_('ADSMANAGER_FORM_CATEGORY')); ?>+" : "+<?php echo json_encode(JText::_('ADSMANAGER_REGWARN_ERROR')); ?>+'\n';
srcList.style.background = "red";
iserror=1;
}
else
{
for (var i=0; i < srcLen; i++) {
srcList.options[i].selected = true;
}
}
<?php
}
?>

if (mfrm.username && (r.exec(mfrm.username.value) || mfrm.username.value.length < 3)) {
errorMSG += mfrm.username.getAttribute('mosLabel').replace('&nbsp;',' ') + ' : '+<?php echo json_encode(sprintf( JText::_('ADSMANAGER_VALID_AZ09'), JText::_('ADSMANAGER_PROMPT_UNAME'), 4 )); ?>+'\n';
mfrm.username.style.background = "red";
iserror=1;
}
if (mfrm.password && r.exec(mfrm.password.value)) {
errorMSG += mfrm.password.getAttribute('mosLabel').replace('&nbsp;',' ') + ' : '+<?php echo json_encode(sprintf( JText::_('ADSMANAGER_VALID_AZ09'), JText::_('ADSMANAGER_REGISTER_PASS'), 6 )); ?>+'\n';
mfrm.password.style.background = "red";
iserror=1;
}

if (mfrm.email && !r_email.exec(mfrm.email.value) && mfrm.email.getAttribute('mosReq')) {
errorMSG += mfrm.email.getAttribute('mosLabel').replace('&nbsp;',' ') + ' : '+<?php echo json_encode(JText::_('ADSMANAGER_REGWARN_EMAIL')); ?>+'\n';
mfrm.email.style.background = "red";
iserror=1;
}

// loop through all input elements in form
for (var i=0; i < me.length; i++) {

if ((me[i].getAttribute('test') == 'number' ) && (r_num.exec(me[i].value))) {
errorMSG += me[i].getAttribute('mosLabel').replace('&nbsp;',' ') + ' : '+<?php echo json_encode(JText::_('ADSMANAGER_REGWARN_NUMBER')); ?>+'\n';
iserror=1;
}

// check if element is mandatory; here mosReq="1"
if ((me[i].getAttribute('mosReq') == 1)&&(me[i].style.visibility != 'hidden')) {
if (me[i].type == 'radio' || me[i].type == 'checkbox') {
var rOptions = me[me[i].getAttribute('name')];
var rChecked = 0;
if(rOptions.length > 1) {
for (var r=0; r < rOptions.length; r++) {
if (rOptions[r].checked) {
rChecked=1;
}
}
} else {
if (me[i].checked) {
rChecked=1;
}
}
if(rChecked==0) {
// add up all error messages
errorMSG += me[i].getAttribute('mosLabel').replace('&nbsp;',' ') + ' : '+<?php echo json_encode(JText::_('ADSMANAGER_REGWARN_ERROR')); ?>+'\n';
// notify user by changing background color, in this case to red
me[i].style.background = "red";
iserror=1;
}
}
if (me[i].value == '') {
// add up all error messages
errorMSG += me[i].getAttribute('mosLabel').replace('&nbsp;',' ') + ' : '+<?php echo json_encode(JText::_('ADSMANAGER_REGWARN_ERROR')); ?>+'\n';
// notify user by changing background color, in this case to red
me[i].style.background = "red";
iserror=1;
}
}
}

if(iserror==1) {
alert(errorMSG);
return false;
} else {
//Little hack to be able to return the selected_cats
<?php if ($this->nbcats > 1) { ?>
srcList.name = "selected_cats[]";
<?php } ?>
return true;
}
}

function updateFields() {
var form = document.adminForm;
var singlecat = 0;
var length = 0;

if ( typeof(document.adminForm.category )!= "undefined" ) {
singlecat = 1;
length = 1;
}
else
{
length = form.selected_cats.length;
}

<?php
foreach($this->fields as $field)
{
if (strpos($field->catsid, ",-1,") === false)
{
$name = $field->name;
if (($field->type == "multicheckbox")||($field->type == "multiselect"))
$name .= "[]";
?>
var input = document.getElementById('<?php echo $name;?>');
var trzone = document.getElementById('tr_<?php echo $field->name;?>');
if (((singlecat == 0)&&(length == 0))||
   ((singlecat == 1)&&(document.adminForm.category.value == 0)))
{
if (input != null)
input.style.visibility = 'hidden';
trzone.style.visibility = 'hidden';
trzone.style.display = 'none';
}
else
{
for (var i=0; i < length; i++) {
var field_<?php echo $field->name;?> = '<?php echo $field->catsid;?>';
var temp;
if (singlecat == 0)
temp = form.selected_cats.options[i].value;
else
temp = document.adminForm.category.value;

var test = field_<?php echo $field->name;?>.indexOf( ","+temp+",", 0 );
if (test != -1)
{
if (input != null)
input.style.visibility = 'visible';
trzone.style.visibility = 'visible';
trzone.style.display = '';
break;
}
else
{
if (input != null)
input.style.visibility = 'hidden';
trzone.style.visibility = 'hidden';
trzone.style.display = 'none';
}
}
}
<?php
}
}
?>
}
</script>
<div id="adsmanager_writead_header">
<div id="writead_header1"><?php echo JText::_('ADSMANAGER_HEADER1'); ?></div>
<div id="writead_header2"><?php echo JText::_('ADSMANAGER_HEADER2'); ?></div>
</div>
<fieldset id="adsmanager_fieldset">
<!-- titel -->
<legend>
<?php
if($this->isUpdateMode) {
  echo JText::_('ADSMANAGER_CONTENT_EDIT');
}
else {
  echo JText::_('ADSMANAGER_CONTENT_WRITE');
}
?>
</legend>
<!-- titel -->
  <!-- form -->
   <!-- category -->
   <table border='0'>
   <tr name='category'>
<td width="100"><?php echo JText::_('ADSMANAGER_FORM_CATEGORY'); ?></td>
<td>
<?php
 $target = JROUTE::_("index.php?option=com_adsmanager&task=save&Itemid=".$this->Itemid);
 if ($this->nbcats == 1)
 {
$this->displaySingleCatChooser(@$this->content->id,$this->conf,"com_adsmanager",$this->cats,$this->catid,$this->Itemid);
?>
<form action="<?php echo $target;?>" method="post" name="adminForm" enctype="multipart/form-data" onsubmit="return submitbutton(this)">
<?php
echo "<input type='hidden' name='category' value='$this->catid' />";
 }
 else
 {
?>
<form action="<?php echo $target;?>" method="post" name="adminForm" enctype="multipart/form-data" onsubmit="return submitbutton(this)">
<?php
if (!isset($this->content->catsid))
$this->content->catsid = 0;
$this->displayMultipleCatsChooser($this->content->catsid,$this->cats,$this->conf,"com_adsmanager",$this->Itemid);
 }
?>
    </td></tr>
<!-- fields -->
<?php
if (($this->nbcats != 1)||(!isset($this->catid))||($this->catid != 0))
{
/* Submission_type == 0 -> Account Creation with ad posting */
if ($this->account_creation == 1)
{
echo "<tr><td colspan='2'>".JText::_('ADSMANAGER_AUTOMATIC_ACCOUNT')."</td></tr>";
echo "<tr><td>".JText::_('ADSMANAGER_UNAME')."</td>\n";
if (isset($this->content->username))
{
$username = $this->content->username;
$password = $this->content->password;
$email = $this->content->email;
$name = $this->content->name;
$style = 'style="background-color:#ff0000"';
}
else
{
$username = "";
$password = "";
$email = "";
$name =  "";
$style = "";
}

if (isset($this->content->firstname))
$firstname = $this->content->firstname;
else
$firstname = "";

if (isset($this->content->middlename))
$middlename = $this->content->middlename;
else
$middlename = "";

if ($this->conf->comprofiler > 0)
{
include_once( JPATH_BASE .'/administrator/components/com_comprofiler/ue_config.php' );
$namestyle = $ueConfig['name_style'];
}
else
$namestyle = 1;

echo "<td><input $style class='adsmanager_required' mosReq='1' id='username' type='text' mosLabel='".htmlspecialchars(JText::_('ADSMANAGER_UNAME'),ENT_QUOTES)."' name='username' size='20' maxlength='20' value='$username' /></td></tr>\n";

echo "<tr><td>".JText::_('ADSMANAGER_PASSWORD')."</td>\n";
echo "<td><input $style class='adsmanager_required' mosReq='1' id='password' type='password' mosLabel='".htmlspecialchars(JText::_('ADSMANAGER_PASS'),ENT_QUOTES)."' name='password' size='20' maxlength='20' value='$password' />\n</td></tr>";
$emailField = false;
$nameField = false;
foreach($this->fields as $field)
{
if (($field->name == "email")&&((strpos($field->catsid, ",$this->catid,")!== false)||(strpos($field->catsid, ",-1,")!== false)))
{
$emailField = true;
// Force required
$field->required = 1;
}
else if (($field->name == "name")&&((strpos($field->catsid, ",$this->catid,")!== false)||(strpos($field->catsid, ",-1,")!== false)))
{
$nameField = true;
// Force required
$field->required = 1;
}
else if (($namestyle >= 2)&&($field->name == "firstname")&&((strpos($field->catsid, ",$this->catid,")!== false)||(strpos($field->catsid, ",-1,")!== false)))
{
$firstnameField = true;
// Force required
$field->required = 1;
}
else if( ($namestyle == 3)&&($field->name == "middlename")&&((strpos($field->catsid, ",$this->catid,")!== false)||(strpos($field->catsid, ",-1,")!== false)))
{
$middlenameField = true;
// Force required
$field->required = 1;
}
}
if (($namestyle >= 2)&&($firstnameField == false))
{
echo "<tr><td>".JText::_('ADSMANAGER_FNAME')."</td>\n";
echo "<td><input $style class='adsmanager_required' mosReq='1' id='firstname' type='text' mosLabel='".htmlspecialchars(JText::_('ADSMANAGER_FNAME'),ENT_QUOTES)."' name='firstname' size='20' maxlength='20' value='$firstname' /></td></tr>\n";
}
if ( ($namestyle == 3)&&($middlenameField == false))
{
echo "<tr><td>".JText::_('ADSMANAGER_MNAME')."</td>\n";
echo "<td><input $style class='adsmanager_required' mosReq='1' id='middlename' type='text' mosLabel='".htmlspecialchars(JText::_('ADSMANAGER_MNAME'),ENT_QUOTES)."' name='middlename' size='20' maxlength='20' value='$middlename' /></td></tr>\n";
}
if ($nameField == false)
{
echo "<tr><td>".JText::_('_NAME')."</td>\n";
echo "<td><input $style class='adsmanager_required' mosReq='1' id='name' type='text' mosLabel='".htmlspecialchars(JText::_('_NAME'),ENT_QUOTES)."' name='name' size='20' maxlength='20' value='$name' /></td></tr>\n";
}
if ($emailField == false)
{
echo "<tr><td>".JText::_('_EMAIL')."</td>\n";
echo "<td><input $style class='adsmanager_required' mosReq='1' id='email' type='text' mosLabel='".htmlspecialchars(JText::_('_EMAIL'),ENT_QUOTES)."' name='email' size='20' maxlength='20' value='$email' /></td></tr>\n";
}
}

/* Display Fields */
foreach($this->fields as $field)
{
echo $this->field->showFieldForm($field,$this->content,$this->default);
}
//echo $this->field->showFieldForm($this->fields['ad_price'],$this->content,$this->default);
?>
<!-- fields -->
<!-- image -->
<?php
if ($this->conf->nb_images > 0)
{
echo "<tr><td colspan='2'>".JText::_('ADSMANAGER_FORM_AD_IMAGE_TEXT');
echo "</td></tr>";
}

for($i = 1; $i < $this->conf->nb_images + 1; $i++)
{
$ext_name = chr(ord('a')+$i-1);
?>
<tr name="ad_picture<?php echo $i;?>"><td><?php echo JText::_('ADSMANAGER_FORM_AD_PICTURE')." ".$i; ?></td>
<td><input id="ad_picture<?php echo $i;?>" type="file" name="ad_picture<?php echo $i;?>" />
<?php
if ($this->isUpdateMode) {
$pic = JPATH_BASE."/images/com_adsmanager/ads/".$this->content->id.$ext_name."_t.jpg";
if ( file_exists( $pic)) {
echo "<img src='".$this->baseurl."images/com_adsmanager/ads/".$this->content->id.$ext_name."_t.jpg?time=".time()."' align='top' border='0' alt='image".$this->content->id."' />";
echo "<input type='checkbox' name='cb_image$i' value='delete' />".JText::_('ADSMANAGER_CONTENT_DELETE_IMAGE');
}
}
echo "</td></tr>";
}

if (function_exists("editPaidAd")){
editPaidAd($this->content,$this->isUpdateMode,$this->conf);
}
?>
<?php echo $this->event->onContentAfterForm ?>
<!-- buttons -->
<input type="hidden" name="gflag" value="0" />
<?php
if (isset($this->content->date_created))
echo "<input type='hidden' name='date_created' value='".$this->content->date_created."' />";

echo "<input type='hidden' name='isUpdateMode' value='".$this->isUpdateMode."' />";
echo "<input type='hidden' name='id' value='".@$this->content->id."' />";
?>
<tr>
<td>
<input type="submit" value="<?php echo JText::_('ADSMANAGER_FORM_SUBMIT_TEXT'); ?>" />
</td>
<td>
<input type="button" onclick='window.location="<?php echo JROUTE::_("index.php?option=com_adsmanager&view=list&Itemid=".$this->Itemid); ?>"' value="<?php echo JText::_('ADSMANAGER_FORM_CANCEL_TEXT'); ?>" />
</td>
</tr>
<!-- buttons -->
<?php
}
?>
  <?php echo JHTML::_( 'form.token' ); ?>
  </form>
  <!-- form -->
</table>
</fieldset>
<script type="text/javascript">
updateFields();
</script>


Я в нём
Код
errorMSG += <?php echo json_encode(JText::_('ADSMANAGER_FORM_CATEGORY')); ?>+" : "+<?php echo json_encode(JText::_('ADSMANAGER_REGWARN_ERROR')); ?>+'\n';
раскодирую вставляя код
Код
php utf8_decode
сверху и снизу...
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Проблема с json_encode
« Ответ #9 : 06.08.2012, 12:15:48 »
Сорри, я с АДСменеджером не работал, а в приведённом коде чёрт ногу сломит. php внутри js внутри php. О_о Я не могу разобраться.
*

trifonov1992

  • Осваиваюсь на форуме
  • 37
  • 0 / 0
Re: Проблема с json_encode
« Ответ #10 : 06.08.2012, 12:34:12 »
Спасибо)) всем решение найдено - заменить везде <?php echo json_encode(JText::_('ADSMANAGER_REGWARN_ERROR')); ?> на <?php JText::_('ADSMANAGER_REGWARN_ERROR'); ?>. Решение предоставленно Grendy
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Проблема с логином на сайт через Iphone

Автор AdmiralSFF

Ответов: 4
Просмотров: 2660
Последний ответ 13.08.2022, 13:19:41
от AdmiralSFF
Проблема с переносом Joomla сайта с хостинга на денвер

Автор 62411

Ответов: 4
Просмотров: 2194
Последний ответ 21.02.2022, 20:22:11
от arma
Проблема Adobe Flash Player

Автор MamontFirst

Ответов: 5
Просмотров: 1584
Последний ответ 23.01.2021, 21:25:23
от MamontFirst
Проблема с редактированием материалов

Автор olesya

Ответов: 15
Просмотров: 3412
Последний ответ 12.07.2020, 12:46:06
от NataliS
[РЕШЕНО] Как в Joomla 2.5 автоматом удалять пользователей, не активировавшихся?

Автор pH43

Ответов: 2
Просмотров: 4175
Последний ответ 01.06.2020, 17:16:26
от pH43