زمرہ آرکائیو: ورڈپریس

Of PHP, Wordpress and other geeky stuff.

کس طرح ایک انٹرنیٹ کا کاروبار شروع کرنے

آن لائن کاروبار شروع کرنے سے آپ کو لگتا آسان ہے. ایک میں کامیاب ایک اور کہانی ہے, کورس. سب سے پہلے, آپ کو ایک پروڈکٹ یا خدمات کی ضرورت, بہتر لوگ چاہتے ہیں کہ کچھ ہونا تھا جس. میرے تجربے میں, کیا لوگوں کو سب سے زیادہ چاہتے ہیں کے لئے ہے پیسہ کمانے کے لئے. ان کا پیسہ بنانے میں مدد ملتی ہے کہ کچھ بھی ایک اچھا پروڈکٹ ہے. دوسرا, آپ کی رقم وصول اور مصنوعات کی فراہمی یا ادائیگی کے بدلے میں سروس فراہم کرنے کا ایک طریقہ کی ضرورت ہے. تیسری, آپ کی نمائش کو حاصل کرنے کی ضرورت.

پڑھنے کے آگے

میک OSX پر Yosemite پر ایس کیو ایل

آپ کے گھر میں آپ میک پر دیو کے کام کے لئے XAMPP استعمال کرتے ہیں تو, اور Yosemite کے لئے اپنا OS اپ ڈیٹ کیا, آپ کو آپ کے MySQLd شروع نہیں کرتا ہے کہ جب آپ عارضی طور پر پریشان ہو سکتے ہیں. طے کر منصفانہ سادہ ہے.

ترمیم کریں /Applications/XAMPP/xamppfiles/xampp. (آپ استعمال کرنا پڑ سکتا ہے sudo ایسا کرنے کے لئے.)

کے لئے دیکھو:

$XAMPP_ROOT/bin/mysql.server start > /dev/null &

اور شامل unset DYLD_LIBRARY_PATH اس کے اوپر. اس طرح نظر آنا چاہئے:

unset DYLD_LIBRARY_PATH
$XAMPP_ROOT/bin/mysql.server start > /dev/null &

MySQLd دوبارہ شروع کریں اور آپ کو یہ کام کرنا چاہئے.

واپس بلاگنگ

آپ نے محسوس کیا ہو سکتا ہے کے طور پر, میں نے گزشتہ چند ماہ کے میں زیادہ لکھ نہیں کیا گیا ہے. یہ میری باقاعدگی سے شیڈول مصنف کے بلاکس کی وجہ سے ایک تھا. میں بلاک کر رہا ہوں جب, میں عام طور پر ایسا کرنے کی دیگر چیزیں تلاش, اور وہ واقعی اہم اور فوری ہے کہ اپنے آپ کو قائل. ایسی ہی ایک بات اس وقت کے ارد گرد میرے بلاگ پسدید کی بہتری تھا. اصل ڈیزائن ء, اور یہ واقعی میں ایک اپ گریڈ کی ضرورت. یا تو میں نے اپنے آپ سے کہا اور چند ہفتوں کے لئے اس پر کام کیا. آپ اس پوسٹ کو پڑھنے کے ہیں تو, تم نے میری محنت کا پھل دیکھ سکتے ہیں. اور مجھے یہ پسند ہے امید ہے کہ.

پڑھنے کے آگے

اعلی کارکردگی بلاگز اور ویب سائٹس

آپ کو ایک ویب سائٹ یا ایک بلاگ ہے اور یہ بھاری ٹریفک کے ساتھ نیچے فنس گیا ہو رہی ہے کہ لگتا ہے? سب سے پہلے, مبارک ہو - یہ ویبماسٹرس اور بلاگرز سے محبت کرے گا کہ ان مسائل میں سے ایک ہے. لیکن کس طرح آپ کو اسے حل کریں گے? سب سے پہلے کام پی ایچ پی کی تیزی کو چالو کرنے کے لئے ہے, آپ کی ویب سائٹ / بلاگ کی بنیاد پر پی ایچ پی کی ہے. یہ براہ راست ہونا چاہئے اگرچہ (اصول میں), یہ حق حاصل کرنے میں کچھ وقت لگ سکتا ہے. تم وہ کیا کہتے ہیں - اصول میں, اصول اور عمل ایک ہی ہیں. عملی طور پر, وہ نہیں ہیں. سرعت کاری, تاہم, ایک کم پھانسی پھل ہے, اور آپ کے مسائل کو حل کرنے میں ایک طویل راستہ جائیں گے.

آپ کو سرعت کے حل کی تمام مائلیج نکالا ہے ایک بار, یہ ایک مواد کی ترسیل کے نیٹ ورک یا CDN شامل کرنے کا وقت ہے. کیا CDN کرتا ہے اپنے تمام جامد فائلوں کی خدمت ہے (تصاویر, سٹائل شیٹس, جاوا اسکرپٹ فائلوں, اور بھی بلاگ کے صفحات محفوظ) آپ کے اپنے مقابلے میں دوسرے سرورز کے ایک نیٹ ورک سے. یہ سرور سامری براعظم کے ارد گرد رکھی جاتی ہیں (اور دنیا بھر میں) آپ کے قارئین اس سے جغرافیائی بند ایک جگہ سے مواد حاصل تاکہ. کی وجہ سے فاصلے پر تاخیر کو کم کرنے کے علاوہ میں, CDN بھی آپ کے سرور پر لوڈ کو کم کرنے کی طرف سے آپ کی مدد کرتا ہے.

پڑھنے کے آگے

blackjack کھیلنے کی معلومات حاصل کریں

یہاں یہ کس طرح کھیلنے کے لئے تمہیں سکھاتا ہے کہ ایک آن لائن بلیک جیک کھیل ہے. تم کیا نہیں جانتے تو, صرف پروگرام پوچھیں! اس پوسٹ میں امید ہے کہ بلیک جیک کھیل میں آپ کو آواز کی حکمت عملی سکھاتا. لیکن آپ کو پتہ ہونا چاہئے کہ حکمت عملی کے عادل اورصحیح کے ساتھ, بلیک جیک ایک کھونے کھیل ہے. گھر ہمیشہ ایک چھوٹے سے کنارے کی ڈگری حاصل کی. کسی بھی حکمت عملی آپ کے لئے کیا کر سکتے ہیں سب سے بہتر آپ رہنے کی طاقت میں اضافہ کرنا ہے — یہ آپ کو آپ کی قمیض کھو کرنے کے لئے لیتا ہے وقت.

پڑھنے کے آگے

Battles Too Small to Fight

چند سال پہلے, I had significant income from online advertising because of my networked business model that worked extremely well at that time. At one point the ad serving company decided to cancel my account because some sites in my network violated their terms and conditions. They told me that they couldn’t pay me for the last two months because they had already refunded the money to the advertisers who were outraged at my T & C violations. تم برا, it was a small fortune. But a couple of months later, they decided to reinstate me. The first thing they did after reactivating my account was to pay me my outstanding balance — the money they had “refunded” to their disgruntled advertisers. میں, کورس, was quite gruntled about the outcome. But the joy didn’t last; they banned me again a month later.

پڑھنے کے آگے

اوپر فلسفہ بلاگ

top50.jpgحقیقی بلاگ اوپر سے ایک کے طور پر منتخب کیا گیا ہے 50 دنیا میں فلسفہ بلاگز! زین کالج کی زندگی اس بلاگ درج جب یہ ایک حیرت انگیز کے طور پر آیا (کم از کم اس کے فلسفہ کے حصے). ان کی فہرست میں 21st کے طور پر اس فہرست, وہ حقیقی بلاگ کے کا کہنا ہے کہ, “فلسفہ طبیعیات سے ملاقات کی اور وہ کبھی کے بعد خوشی سے رہتے ہیں.”

کی طرف سے تصویر h.koppdelaney

We Are Moving…

Unreal Blog has moved to a more powerful server at Arvixe. [Disclosure: All the server links in this article are affiliate links.] For those interested in moving your hosting to a new server, I thought I would describe the “gotchas” involved.

This gotcha got me during a test migration of my old posts to the new server. I had over 130 posts to migrate. When I moved them to the new blog on the new server, they looked like new posts. To the unforgiving logic of a computer (that defies common sense and manages to foul up life), this pronouncement of newness is accurate, میں تسلیم کرتے ہیں — they were indeed new posts on the new server. تو, on the 10th of January, my regular readers who had signed up for updates received over 100 email notifications about “new posts” on my blog. Needless to say I started getting angry emails from my annoyed regulars demanding that I remove their names from my “list.excessive” (as one of them put it). If you were one of those who got excessive emails, please accept my apologies. Rest assured that I have turned off email notifications, and I will look and hard into the innards of my blog before turning it back on. And when I do turn it on, I will prominently provide a link in each message to subscribe or unsubscribe yourself.

As you grow your web footprint and your blog traffic, you are going to have to move to a bigger server. میرے معاملے میں, I decided to go with Arvixe> because of the excellent reviews I found on the web. The decision of what type of hosting you need makes for an interesting topic, which will be my next post.

سرمانا یا نیند کے بعد خالی سکرین?

ٹھیک ہے, مختصر جواب, زیادہ آپ کی جسمانی میموری کی سائز سے کرنے کے لئے اپنے مجازی میموری میں اضافہ.

طویل ورژن اب. حال ہی میں, میں نے اس کے اشتاء یا نیند موڈ سے مناسب طریقے سے اٹھنا نہیں ہو گا کہ میرے پی سی کے ساتھ یہ مسئلہ تھا. پی سی خود پر اور تیزی سے بہہ جائے گا, لیکن سکرین موڈ بجلی کی بچت کرنے کے لئے سوئچ گے, خالی رہ. اس نقطہ پر کرنے کے لئے صرف ایک ہی چیز کمپیوٹر دوبارہ شروع ہو گا.

میں ہوں کہ اچھا netizen طرح, میں نے ایک حل کے لئے انٹرنیٹ trawled کی. لیکن کسی بھی نہیں مل سکا. کچھ BIOS کی اپ گریڈنگ کی تجویز پیش کی, تو گرافکس کارڈ اور جگہ. پھر میں نے یہ ایک لینکس گروپ میں ذکر کیا دیکھا, سویپ فائل کے سائز جسمانی میموری کے مقابلے میں زیادہ ہونا چاہئے کہہ رہے ہیں کہ, اور میری ونڈوز XP مشین پر اس کی کوشش کرنے کا فیصلہ کیا. اور یہ مسئلہ حل!

تو جاگنی کے بعد خالی سکرین کے اس مسئلے کا حل آپ کے نظام میں میموری سے زیادہ کچھ مجازی میموری کے سائز مقرر کرنے کے لئے ہے. آپ کو مزید معلومات کی ضرورت ہے تو, یہاں ہے کہ کس طرح, قدم بہ قدم کی شکل میں. یہ ہدایات ایک ونڈوز XP مشین پر لاگو.

  1. پر دایاں کلک کریں “میرا کمپیوٹر” اور ہٹ “پراپرٹیز.”
  2. رام سائز پر ایک نظر ڈالیں, اور پر کلک کریں “اعلی درجے کی” ٹیب.
  3. پر کلک کریں “ترتیب” کے تحت بٹن “کارکردگی” گروپ باکس.
  4. میں “کارکردگی کے اختیارات” آتا ہے کہ ونڈو, منتخب کریں “اعلی درجے کی” ٹیب.
  5. میں “مجازی میموری” نیچے کے قریب گروپ باکس, پر کلک کریں “تبدیلی” بٹن.
  6. میں “مجازی میموری” ٹمٹمانے والے ونڈو, مقرر “اپنی مرضی کے سائز” آپ کے RAM کے سائز کے مقابلے میں زیادہ کچھ کرنے کے لئے (آپ قدم میں نے دیکھا کہ 2). تم ہے کہ کسی بھی ہارڈ ڈسک کی پارٹیشن پر مقرر کر سکتے ہیں, لیکن آپ کو ان تمام ہدایات کے ذریعے جا رہے ہیں تو, امکانات ہیں آپ صرف ہیں “C:”. میرے معاملے میں, میں نے اس پر ڈال کرنے کے لئے انتخاب کیا ہے “M:”.

پی ایچ پی میں ایک مقامی فائل میں ایک تار کو بچانے کے لئے کس طرح?

This post is the second one in my geek series.

While programming my Theme Tweaker, I came across this problem. I had a string on my server in my php program (the tweaked stylesheet, حقیقت میں), and I wanted to give the user the option of saving it to a file his computer. I would’ve thought this was a common problem, and all common problems can be solved by Googling. لیکن, lo and behold, I just couldn’t find a satisfactory solution. I found my own, and thought I would share it here, for the benefit of all the future Googlers yet to come and go.

Before we go into the solution, let’s understand what the problem is. The problem is in the division of labor between two computers — one is the server, where your WordPress and PHP are running; the other is the client’s computer where the viewing is taking place. The string we are talking about is on the server. We want to save it in a file on the client’s computer. The only way to do it is by serving the string as an html reply.

پہلی نظر میں, this doesn’t look like a major problem. سب کے بعد, servers regularly send strings and data to clients — that’s how we see anything on the the browser, including what you are reading. If it was just any PHP program that wants to save the string, it wouldn’t be a problem. You could just dump the string into a file on the server and serve the file.

But what do you do if you don’t want to give the whole world a way of dumping strings to files on your server? ٹھیک ہے, you could do something like this:

<?php
header('Content-Disposition: attachment; filename="style.css"');
header("Content-Transfer-Encoding: ascii");
header('Expires: 0');
header('Pragma: no-cache');
print $stylestr ;
?>

تو, just put this code in your foo.php that computes the string $stylestr and you are done. But our trouble is that we are working in the WordPress plugin framework, and cannot use the header() calls. When you try to do that, you will get the error message saying that header is already done dude. For this problem, I found the ingenious solution in one of the plugins that I use. Forgot which one, but I guess it is a common technique. The solution is to define an empty iFrame and set its source to what the PHP function would write. Since iFrame expects a full HTML source, you are allowed (حقیقت میں, obliged) to give the header() directives. The code snippet looks something like:

<iframe id="saveCSS" src="about:blank" style="visibility:hidden;border:none;height:1em;width:1px;"></iframe>
<script type="text/javascript">
var fram = document.getElementById("saveCSS");
<?php echo 'fram.src = "' . $styleurl .'"' ;
?>

Now the question is, what should the source be? دوسرے الفاظ میں, what is $styleurl? واضح طور پر, it is not going to be a static file on your server. And the purpose of this post is to show that it doesn’t have to be a file on the server at all. It is a two-part answer. You have to remember that you are working within the WordPress framework, and you cannot make standalone php files. The only thing you can do is to add arguments to the existing php files, or the plugins you have created. So you first make a submit button as follows:

<form method="post" action="<?php echo $_SERVER["REQUEST_URI"]?>">
<div class="submit">
<input type="submit" name="saveCSS" title="Download the tweaked stylesheet to your computer" value="Download Stylesheet" />
</div>

Note that the name attribute of the button is “saveCSS.” اب, in the part of the code that handles submits, you do something like:

<?php
if (isset($_POST['saveCSS']))
$styleurl = get_option('siteurl') . '/' . "/wp-admin/themes.php?page=theme-tweaker.php&save" ;

?>

This is the $styleurl that you would give as the source of your iFrame, fram. Note that it is the same as your pluging page URL, except that you managed to add “?save” at the end of it. The next trick is to capture that argument and handle it. For that, you use the WordPress API function, add_action as:

<?php
if (isset($_GET['save'] ))
add_action('init', array(&$thmTwk, 'saveCSS'));
else
remove_action('init', array(&$thmTwk, 'saveCSS'));
?>

This adds a function saveCSS to the init part of your plugin. Now you have to define this function:

<?php
function saveCSS() {
header('Content-Disposition: attachment; filename="style.css"');
header("Content-Transfer-Encoding: ascii");
header('Expires: 0');
header('Pragma: no-cache');
$stylestr = "Whatever string you want to save";
ob_start() ;
print $stylestr ;
ob_end_flush() ;
die() ;
}
?>

Now we are almost home free. The only thing to understand is that you do need the die(). If your function doesn’t die, it will spew out the rest of the WordPress generated stuff into your save file, appending it to your string $stylestr.

It may look complicated. ٹھیک ہے, I guess it is a bit complicated, but once you implement it and get it running, آپ کر سکتے ہیں (and do) forget about it. کم از کم, مجھے کیا کرنا. That’s why I posted it here, so that the next time I need to do it, I can look it up.