• اطلاعیه ها

    • Saeed Fard

      برگزاری میتاپ وردپرسی   14/08/96

      بعد از اولین دوره همایش وردپرس در ایران اگر پیگیر اخبار وردپرس بوده باشید، حتما خبر برگزاری چندین میتاپ و جلسه متعدد وردپرسی را شنیده‌اید، یکی از بحث‌های اصلی که محور اصلی این میتاپ‌ها بوده است برگزاری وردکمپ بود که به طور جدی دنبال می‌شود. این میتاپ‌ها و جلسات توسط جمعی از فعلان حوزه وردپرس در کنار وردپرس‌پارسی برگزار می‌شد و مسائل مربوط به این حیطه و از جمله وردکمپ مورد بحث قرار می‌گرفت. این بار با رایزنی‌هایی که با تیم اصلی وردپرس داشتیم در بخش دوم این رویدادها قصد داریم که میتاپ‌ها و جلسات وردپرسی را به صورت آزاد برگزار کنیم تا تمامی علاقه‌مندان و دوست‌داران وردپرس فرصت حضور داشته باشند و با گردهمایی، جامعه کاملتری از دوست داران وردپرس بسازیم و از تجربیات یکدیگر استفاده کنیم.   بدیهی است که این رویدادها با رویکرد مثبت در جهت سود رسانی به جامعه وردپرس و افراد حاضر در آن برگزار می‌شود و برای تمامی علاقه‌مندان به وردپرس است. پس اگر یک کاربر معمولی وردپرس یا یک توسعه دهنده هستید می‌توانید در این رویدادها شرکت کنید. ما در ملاقات‌هایمان از موارد مختلف و کاربردی وردپرس صحبت می‌کنیم و علاقمند به توسعه هر چه بیشتر وردپرس در ایران هستیم. ما وردپرس را دوست داریم. عضویت در این گروه برای همه افرادی که مایل به پیوستن هستند بدون در نظرگرفتن توانایی‌ها، مهارت‌ها، وضعیت مالی و یا معیارهای دیگر باز و رایگان است. فضای میتاپ‌ها و جلسات ما دوستانه و آزادنه و دور از هرگونه تبعیض و رفتارهای زننده است. بر این اساس از تمامی دوستانی که علاقه‌مند به شرکت در میتاپ‌های وردپرس هستند دعوت می‌شود تا از طریق لینک زیر در سایت میتاپ اقدام به ثبت‌نام کنند و منتظر خبرهای برگزاری جلسات در آینده باشند . لینک ثبت نام و عضویت : https://www.meetup.com/Iran-WordPress-Meetup    
    • Saeed Fard

      نسخه جدید وردپرس پارسی رونمایی شد   05/09/96

      در پنجمین سال فعالیت از وردپرس پارسی و بعد از ارائه خدمات و سرویس‌های متفاوت به جامعه وردپرس ، برآن شدیم که نسخه جدید سایت وردپرس‌پارسی را بر اساس نیازها و خدمات جدیدی که قرار است ارائه شود طراحی و رونمایی کنیم ، از این جهت امروز یک ورژن از نسخه جدید رونمایی شد. در ادامه به معرفی بخش‌های مختلف سایت می‌پردازیم.     در دوره فعالیت گروه وردپرس‌پارسی بیش از 13 افزونه مختلف به صورت رایگان از طرف گروه برای وردپرس نوشته و منتشر شد که در مجموع دارای 100هزار نصب فعال روی سایت‌های وردپرسی است و 500هزاربار از مخزن پلاگین‌های وردپرس دانلود شده‌اند. به همین دلیل قسمت اول وب‌سایت مختص معرفی افزونه‌های گروه وردپرس‌پارسی طراحی شده است که در آن لیستی کامل از افزونه‌ها به همراه توضیحات در اختیار کاربران است . روند تولید افزونه‌های رایگان در جهت توسعه و بومی‌سازی بیشتر وردپرس از طرف وردپرس پارسی ادامه دارد و بزودی افزونه‌های دیگری به آرشیو اضافه خواند شد.   گروه وردپرس‌پارسی که تا به این‌جا تمرکز بیشتر خود را روی پشتیبانی رایگان از وردپرس گذاشته بود تا مشکلات کاربران وردپرس فارسی را حل کند که حاصل این فعالیت 18 هزار کاربر در انجمن با 43 هزار موضوع و 255 هزار سوال جواب است، قرار است من بعد در عرصه آموزش وردپرس وارد شود و از تخصص اعزای گروه در این حوزه نیز استفاده کند تا مرجعی کامل، اصولی و درست برای آموزش وردپرس ایجاد شود. قسمت دوم وب‌سایت مربوط به مقالات و آموزش‌هایی است که روی وردپرس پارسی از طرف اعضای آن ارسال می‌شود.   در دنیای وردپرس اتفاقات مختلفی در حال روی دادن است که دانستن آن‌ها میتونه برای ما جالب و جذاب باشه، برگزاری وردکمپ‌ها، معرفی سرویس‌ها و خدمات جدید و ... که از جمله اخبار مهم در این حوزه می‌توان برگزاری اولین همایش وردپرس ایران در سال 93 و همایش‌های دیگر مربوط به وردپرس و معرفی سیاره وردپرس و همینطور خبر برگزاری میتاپ‌های وردپرسی در ایران اشاره کرد ، در قسمت آخر وب‌سایت به معرفی موارد این چنینی پرداخته می‌شود و همینطور گزارش‌های مرتب از فعالیت‌ها، میتاپ‌ها و رویدادهای وردپرسی در آن ارائه می‌شود .   در ادامه این فعالیت‌ها بزودی شاهد اخبار جدیدی از وردپرس‌پارسی خواهید بود. شما نیز به عنوان یکی از کاربران این جامعه وردپرسی می‌توانید ما را در توسعه هر چه بیشتر وردپرس یاری کنید. لینک مستقیم خبر : http://wp-parsi.com/wpparsi-new-version  
iwordpress.ir

آخرین ارسالهای انجمن در وردپرس

19 پست در این موضوع قرار دارد

سلام ;

من یک وردپرس روی لوکال دارم یک انجمن آی پی بی روی سرور سایتم .

میخوام آخرین ارسالهای انجمن رو تو وردپرس به صورت یک پلاگین در بیارم ...

سوالی که الان دارم برای require هست .

یه سری از اسناد php رو من به فرض تو آی پی بی میام requier میکنم :


require_once( IPS_ROOT_PATH . 'sources/base/ipsRegistry.php' );

حالا میخوام این سند رو require کنم توی وردپرس چه پیشنهادی دارید واسش ؟

بعد برای اتصال . مستقیم بیام به دیتابیس ipb وصل بشم یا راه حل های دیگه ای دارید ؟

1

به اشتراک گذاری این پست


لینک به پست

الان اسم تاپیک چی بود؟!!! ویرایش شد.

چرا از فید IPB استفاده نمی کنید؟

اگر بخواین از توابع IPB استفاده کنید باید کلاسهای اصلی IPB هم اینکلود بشن.(اصلا پیشنهاد نمیشه)

برای اتصال به IPB بصورت مستقیم هم باید یوزر و پسورد دیتابیس و آی پی رو هم بزنید که این یعنی پایین اومدن شدید امنیت. چون وردپرس خیلی آسیب پذیر هست و با اینکار شما انجمن رو هم در معرض خظر قرار میدید.

3

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

از فید که بله اما نه !

ببینید این کد رو :

<?php

define( 'IPB_THIS_SCRIPT', 'public' );

require_once( './initdata.php' );

require_once( IPS_ROOT_PATH . 'sources/base/ipsRegistry.php' );

require_once( IPS_ROOT_PATH . 'applications/forums/sources/classes/topics.php' );

$registry = ipsRegistry::instance();

$registry->init();

$classtopic = new app_forums_classes_topics($registry);

$filters = array();

$filters['limit'] = 14;

$filters['offset'] = 0;

$filters['sortField'] = 'last_post';

$filters['sortOrder'] = 'DESC';

$settings = $registry->settings();

$boardurl = $settings['board_url'];

$latesttopic = $classtopic->getTopics($filters );

header('Content-Type: text/html; charset=UTF-8');

echo '

<html xmlns="http://www.w3.org/1999/xhtml" dir="rtl" lang="fa-IR">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

<title>آخرین ارسال های انجمن</title>

<style type="text/css">

.Clear {

clear: both;

}

.ForumLastTopic {

border: 1px solid #DCDCDC;

border-radius: 10px 10px 10px 10px;

float: left;

width: 620px;

font-family:Tahoma;

font-size:12px;

}

.ForumLastTopic .Head {

background: url("Head.png") repeat-x scroll 0 0 transparent;

border-bottom: 2px solid #CFCFCF;

border-radius: 10px 10px 0 0;

height: 28px;

}

.ForumLastTopic .Foot {

background: url("Foot.png") repeat-x scroll 0 0 transparent;

border-radius: 0 0 10px 10px;

border-top: 2px solid #CFCFCF;

height: 26px;

}

.ForumLastTopic .Next, .ForumLastTopic .Prev {

background: url("Btn.png") repeat-x scroll 0 0 transparent;

border: 1px solid #DEDEDE;

border-radius: 5px 5px 5px 5px;

box-shadow: 0 1px 3px #CECECE;

color: #9AAB65;

cursor: pointer;

display: block;

float: right;

height: 18px;

margin-right: 10px;

margin-top: 2px;

text-align: center;

width: 50px;

}

.ForumLastTopic #MTFloader img {

float: right;

height: 16px;

margin-right: 10px;

margin-top: 5px;

width: 16px;

}

.ForumLastTopic .Forumsbox {

color: #959595;

}

.ForumLastTopic .Forumsbox .col1 {

height: 21px;

padding-right: 5px;

width: 400px;

}

.ForumLastTopic .Forumsbox .col2 {

height: 21px;

text-align: center;

width: 60px;

}

.ForumLastTopic .Forumsbox .col3 {

height: 21px;

text-align: center;

width: 60px;

}

.ForumLastTopic .Forumsbox .col4 {

height: 21px;

text-align: center;

width: 110px;

}

.ForumLastTopic .Head span.col1 {

border-left: 1px solid #D7D7D7;

color: #97AD5E;

display: block;

float: right;

line-height: 28px;

text-align: center;

width: 388px;

}

.ForumLastTopic .Head span.col2 {

border-left: 1px solid #D7D7D7;

border-right: 1px solid #FFFFFF;

color: #97AD5E;

display: block;

float: right;

line-height: 28px;

text-align: center;

width: 58px;

}

.ForumLastTopic .Head span.col3 {

border-left: 1px solid #D7D7D7;

border-right: 1px solid #FFFFFF;

color: #97AD5E;

display: block;

float: right;

line-height: 28px;

text-align: center;

width: 58px;

}

.ForumLastTopic .Head span.col4 {

border-right: 1px solid #FFFFFF;

color: #97AD5E;

display: block;

float: right;

line-height: 28px;

text-align: center;

width: 100px;

}

</style>

</head>

<body>

<div class="ForumLastTopic">

<div class="Head">

<span class="col1">عنوان آخرین ارسال های تالار گفتمان</span>

<span class="col2">پاسخ</span>

<span class="col3">بازدید</span>

<span class="col4">آخرین ارسال</span>

<div class="Clear"></div>

</div>

<div id="MTForumBlock">

<table cellspacing="1" cellpadding="0" class="Forumsbox">

<tbody>';

foreach ($latesttopic as $topic) {

echo "

<tr>

<td class=\"col1\"><a href=\"".$boardurl."/index.php?showtopic=".$topic['tid']."\" target=\"_blank\" >".$topic['title']."</a></td>

<td class=\"col2\">".$topic['posts']."</td>

<td class=\"col3\">".$topic['views']."</td>

<td class=\"col4\">".$topic['last_poster_name']."</td>

</tr>";

}

echo "

</tbody>

</table>

</div>

<div class='Foot'>

</div>

</div>

</body>

</html>";

?>

این کد واسه آی پی بی و پیش نمایشش هم از http://forum.progpar...latest-post.php

میخواستم بیام اطلاعات دیتابیس آی پی بی رو فایل config درست کنم تو وردپرس و مقداراشو به کاربر input بدم که تو تنظیمات پلاگین وارد که شما فرمودید از نظر امنیتی مشکل داره !

یه بحثی هم دارم سر ایمپورت کلاس های آی پی بی که باز فرمودید پیشنهاد نمیشه !!

راهکاری اگر دارید ممنون میشم :)

ویرایش شده در توسط Morteza
کدهای بلند در longbox
0

به اشتراک گذاری این پست


لینک به پست

اگر قرار هست از همین کد استفاده بشه و البته افزونه هم بشه مجبورید از اطلاعات ارتباط با دیتابیس استفاده کنید. ولی خوب کمی ریسک خواهد داشت.

در هر صورت برای این روش فکر نمیکنم بجز این راه دیگه ایی باشه.

0

به اشتراک گذاری این پست


لینک به پست

آقا مرتضی روی سیستم دیتالایف هم چک کردم یه همچین ماژولی توسط تیم روسی دیتالایف نوشته شده که اونم اومده اطلاعات دیتابیس آی پی بی رو استفاده کرده !

حالا من هم فک نمیکنم غیر این دو راه راهی باشه !

سوالی که الان من دارم تو require ها که تو کد بالا میبینید :


require_once( IPS_ROOT_PATH . 'sources/base/ipsRegistry.php' );

این مسیری هست که تو خود ای پی بیه . من برای require این مسیر تو وردپرس برای آدرس دهی میخوام یک input تو تنظیمات پلاگین بزارم که کاربر آدرس سایت و محلی که فرومش روش نصبه رو بده و تو اون require این مورد رو اعمال کنم !

در مورد امنیتش هم wordpress.org اگر تایید کرد انتشار میدم اگر هم که نه بالاخره یه راهی واسش پیدا میشه !

0

به اشتراک گذاری این پست


لینک به پست

یکم هم در مورد این مشکل امنیتی که گفتید توضیح بدید

0

به اشتراک گذاری این پست


لینک به پست

بحث مشکل امنیتی توی خود وردپرس هست نه افزونه.

ببینید شما میتونی بخشی برای وارد کردن اطلاعات دیتابیس در افزونه تعبیه کنی این مشکلی نداره.

بحث این هست اگر وردپرس مشکل امنیتی داشته باشه و زده بشه از اون سمت انجمن هم از دست میره.

ولی در هر صورت همون راه اینکلود بجز فید، تنها راه موجود هست.

0

به اشتراک گذاری این پست


لینک به پست

کوئری دارم میزنم از آی پی بی از کلاس دیتابیس وردپرس استفاده کنم ؟ یا همون پیش فرض php . چون واسه wordpress.org میخوام بفرستم شاید قبول نکنه

0

به اشتراک گذاری این پست


لینک به پست

وقتی وردپرس این کلاس رو داره از همون استفاده کنید.

کارتون راحتتر هم میشه.

1

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

الان پلاگین اوکی شده فقط باید فیلدهایی رو براش بزارم که کاربر بعد از نصب اطلاعات دیتابیس انجمنش رو بده تا از حالت ویرایش دستی اطلاعات بیرون بیاد . حالا من برای امنیتش نخواستم مقداری تو دیتابیس بزارم و در اصل این فرم رو برای کاربر بزارم بعد از سابمیتش اطلاعات تو یک سند config.php در فولدر پلاگین ایجاد بشه و اون مقدار ها به صورت متغیر تو config.php نوشته بشه که بعد من هم ازش استفاده کنم .

حالا مشکلی که هست تو ایجاد اون سند هست بعد از سابمیت فرم ایجاد میشه اما تو فولدر پلاگین ایجاد نمیشه !

شکل کلی دستورم اینه :


<?php
if(isset($_POST['submit'])){
$my_file = 'file.txt';
$handle = fopen($my_file, 'w');
$data = 'This is the data';
fwrite($handle, $data);
fclose($handle);
}
?>

برای آدرس دهیا از همون ثابتی که در اجرای پلاگینم استفاده کردم اینجا هم استفاده کردم اما باز هم در فولدر پلاگین ایجاد نمیشه و جای دیگه ایجاد میشه !:‌


$my_file = MyPlugin_DIRNAME . '/file.txt';

ویرایش شده در توسط progpars
0

به اشتراک گذاری این پست


لینک به پست

بنظر درسته من خودم هم اینطور مینویسم:

$path = $_SERVER['DOCUMENT_ROOT']."/wp-content/plugins/PLUGNAME/";
$fh = fopen($path.'flie.txt', 'w') or die("can't open file");
fwrite($fh, $content);
fclose($fh);

1

به اشتراک گذاری این پست


لینک به پست

میدونید چیه آقا مرتضی من میخواستم این مسیر رو که دارم میدم به صورت اتوماتیک باشه .

چون الان با این مقداری که به متغیر $patch دادیم اگر کاربر بیاد اسم پوشه پلاگین رو عوض کنه مشکل بر میخوریم

0

به اشتراک گذاری این پست


لینک به پست

خوب میشه داینامیک کرد. براساس اسم افزونه و یا آدرس پوشه افزونه همین مدنظرتون هست؟

0

به اشتراک گذاری این پست


لینک به پست

بله دقیقا

0

به اشتراک گذاری این پست


لینک به پست

با تابع basename اوکی کردم


$my_file = $_SERVER['DOCUMENT_ROOT'].'/wp-content/plugins/'. basename(dirname(__FILE__)) .'/s.php';

1

به اشتراک گذاری این پست


لینک به پست

الان میخوام واسه نسخه انگلیسیشم کار کنم یه بحث چپ شدن هست

من آخرین ارسال ها رو که نشون میدم جدولی که درست کردم برای فارسی زبانان هست . میخواستم نسخه انگلیس شد علاوه بر فایل زبان چپ چین شه

0

به اشتراک گذاری این پست


لینک به پست

یک راه ساده:

$lang=get_bloginfo("language");

1

به اشتراک گذاری این پست


لینک به پست

یک مثال هم واسه کسی که تاپیک رو خوند نیاز به راهنمایی بیشتر داشت :


$currentlang = get_bloginfo('language');
if($currentlang=="fa-IR"):?>
سلام
<?php else: ?>
hello
<?php endif; ?>

1

به اشتراک گذاری این پست


لینک به پست

بعد در مورد آدرس دهیه این ثابت فک میکنم بهتر باشه و داینامیک تر :‌


define( 'MYPLUGINNAME_PATH', plugin_dir_path(__FILE__) );


require(MYPLUGINNAME_PATH .'/ipb_config.php');

اینجوری دیگه کلاْ آدرس سایت و پوشه wp-content و ... رو میگیره و نیازی نیست دستی بدیم

1

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری