Archiwa kategorii: Modyfikacje

[ClassiPress] Multi Category Select

Multi Category Select
By this modification of ClassiPress Theme, You can allow users to publish classified ad in multiple categories and count for this additional fee.

How it works?

In administrative panel You have got 2 additional options to set, price for multiple selecting, and quantity of selected categories by which price will be increased.
For example: if we will set price 5$ and quantity for 6, system will count additional 5$ for every 6 categories.

Screenshot of additional options in Admin panel:

From user side, on Add New page we will have „classic” select category form, and below it section to select more categories (just like in admin panel, list of categories with checkboxes).
To keep inform user about cost for multiple selecting, system automaticly show cost for selected categories.

Screenshot of Add New page:

Then after selecting categories and filled whole ad data, on confirmation page before redirecting to payment system user will see all fees.

Screenshot of Confirmation page:

Screenshot of Single ad listing page:

Modification works best with 2 level categories and Fixed Price Per Ad option.

How to order it? Contact me!

[ClassiPress] Visibility of contact fields

Visibility of contact fields
By this modification of ClassiPress Theme, You may control from administrative panel visibility of contact fields on single ad page.

Default option is „Visible to everyone„, means every visitor will see contact fields, but for some of fields You may set visibility to No, then only registered and logged in users will see these contact fields – others will see information „Visible for logged in„.

Screenshot of single ad page:

Screenshot of edit custom field page:

This modification can be useful if You need to hide some data or wanna improve quantity of new registrations on Your website.

How to order it? – Contact me!

[WP e-Commerce] Minimum order amount

Title of mod: Minimum order amount
Plugin: WP e-Commerce 3.8

Some of payment gateways can not process payments less then 1, 3 or 6$, and for example in our shop we have got products which cost half of dollar… so to protect from that orders which can not be processed by our payment system, we will add small amount filter…

Step 1: Open file „/wp-e-commerce/wpsc-includes/ajax.functions.php” and about line 531 ( inside of the function wpsc_submit_checkout ) add following code:

	if($wpsc_cart->calculate_total_price() < 6) {
		$_SESSION['wpsc_checkout_misc_error_messages'][] = __( 'Not reached the minimum amount of the basket. Minimum is 6$.', 'wpsc' );
		$is_valid = false;
	}

Step 2: Save and upload new file;)

Now, when client will try to finalize order with amount less then our minimum, shopping cart will show him error message „Not reached the minimum amount of the basket. Minimum is 6$.”

Google XML Sitemap for ClassiPress

EN:
Small modifycation of Google XML Sitemap plugin for WordPress to include generating sitemap for ad listings.
Generaly, plugin before make modification generate everything except posts with custom post type (in our case post_type=”ad_listing”).
Tested on ClassiPress 3.0.5.4 and WordPress 3.1.3

PL:
Mała modyfikacja wtyczki do WordPressa Google XML Sitemap aby dołączyć generowanie mapy dla ogłoszeń.
Ogólnie wtyczka przed naniesieniem zmian generowała wszystko oprócz wpisów z własnym typem wpisu (w naszym przypadku post_type=”ad_listing”).
Sprawdzone na ClassiPress 3.0.5.4 i WordPress 3.1.3

Screenshot
Google XML sitemap for ClassiPress Theme

Spolszczenie ClassiPress’a dostępne tutaj.

[modified]Google XML Sitemap
Download/Pobierz

Google XML Sitemap for Clipper

EN:
Working on the last project I was stuck with generating the sitemap for google.
All plugins and solutions suggested on the AppThemes forum did not work properly or does not generate the full sitemap.
So I downloaded newest beta release of Google XML Sitemap, and attach small modification to include generating sitemap for coupons.
Generaly, plugin before make modification generate everything except posts with custom post type (in our case post_type=”coupon”).
Tested on Clipper 1.0.1 and WordPress 3.1.2

PL:
Pracując nad ostatnim projektem utknąłem z generowaniem mapy strony dla google.
Wszystkie wtyczki i rozwiązania sugerowane na forum AppThemes nie działały poprawnie lub nie generowały pełnej mapy strony.
Pobrałem zatem najnowszą beta wersję Google XML Sitemap i naniosłem małe modyfikacje, aby dołączyć generowanie mapy dla kuponów.
Ogólnie wtyczka przed naniesieniem zmian generowała wszystko oprócz wpisów z własnym typem wpisu (w naszym przypadku post_type=”coupon”).
Sprawdzone na Clipper 1.0.1 i WordPress 3.1.2

Screenshot
Google XML sitemap for Clipper Theme

Spolszczenie Clipper’a dostępne tutaj.

[modified]Google XML Sitemap
Download/Pobierz

[Newscast] Add checkbox field to contact form

Newscast Theme offer a lot of options, one of these option is cute AJAX contact form… One of my client wanted add to this form additional checkbox field, so lets do it;)…

Newscast Theme oferuje wiele opcji, jedną z tych opcji jest ładny AJAX’owy formularz kontaktowy… Jeden z moich klientów chciał dodać do tego formularza dodatkowe pole zaznaczania, więc zróbmy to;)…

SOLUTION / ROZWIĄZANIE

1. Open file – „newscast/submit_news.php”
Otwórz plik – „newscast/submit_news.php”

2. Add code there where You want to have checkbox fields:
Dodaj kod tam gdzie chcesz mieć pola zaznaczania:

<p class="mftype" ><label for="typeofcontact">Type of contact: </label><input type="checkbox" value="Flat" name="typeofcontact[]" />Flat <input type="checkbox" value="House" name="typeofcontact[]" />House</p>

3. Open file – „newscast/send.php”
Otwórz plik – „newscast/send.php”

4. Below declare lines in header of file add:
Poniżej linii deklaracji w nagłówku pliku dodaj:

		$the_typeofcontact = $_POST['typeofcontact'];
		$the_typeofcontact_out = '';
		$ctoc = '';
    if(!empty($the_typeofcontact)) {
      $ctoc = count($the_typeofcontact);
      for($i=0; $i < $ctoc; $i++)
        {
          $the_typeofcontact_out .= $the_typeofcontact[$i] . ", ";
        }
    }

5. Add our field to array $already_used, like below:
Dodaj nasze pole do tablicy $already_used, jak poniżej:

$already_used = array('yourname','email','website','message','ajax','myemail','myblogname','typeofcontact','Send');

6. Next, print out this what we got, like below:
Następnie, wydrukujmy to co mamy, jak poniżej:
(Type of contact: $the_typeofcontact_out)

			$message = "New message from  $the_name <br/>
			Mail: $the_email<br />
			Website: $the_website <br />
			Type of contact: $the_typeofcontact_out <br />
			$attach <br />
			Message: $message1 <br />";

7. Open file – „newscast/js/custom.js”
Otwórz plik – „newscast/js/custom.js”

8. Find code like below (about line 887):
Znajdź kod jak poniżej (około linii 887):

formElements: form.find('textarea, select, input:text, input[type=hidden]'),

And replace it with this one code:
I zamień go z tym kodem:

formElements: form.find('textarea, select, input:text, input[type=hidden]').end().form.find( ':checkbox' ).attr( 'checked', 'checked' ).end(),

9. Save and upload new files.
Zapisz i wgraj nowe pliki.

P.S. Enjoy Your checkbox fields;)

[FIX] WP Custom Fields Search – Sticky Posts

When we use sticky posts on our blog/website, they appear in search results (search by plugin WP Custom Fields Search) even if they do not match the search phrase… after quick search the web I found a way how to fix this, maybe it’s not the best one solution, but working fine…

Gdy używamy przyklejania postów na naszym blogu/stronie, pojawiają się one w wynikach wyszukiwania (wyszukiwaniu przez wtyczkę WP Custom Fields Search) nawet gdy wpisy nie pasują do wyszukiwanej frazy… po szybkim przeszukaniu sieci znalazłem sposób naprawienia tego, może nie jest to najlepsze rozwiązanie, ale działa dobrze…

SOLUTION / ROZWIĄZANIE

1. Open template file – „search.php”
Otwórz plik szablonu – „search.php”

2. Find a line where the loop begin, should looks like below:
Znajdź linię gdzie zaczyna się pętla, powinna wyglądać jak poniżej:

<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

3. Before the loop add below code:
Przed pętlą dodaj poniższy kod:

<?php if ($_GET['search-class']){query_posts('caller_get_posts=1');} ?>

4. Save and upload new file / Zapisz i wgraj nowy plik.

[FIX] WPEC – Resend Receipt to Buyer

When mail is sent at first time everything is fine, I mean correct amount of shipping, tax and total… but when we try to resend mail to client by link „Resend Receipt to Buyer” in admin section, shipping is calculated without additional item fee, and total price is calculated without taxes…

Gdy e-mail jest wysyłany po raz pierwszy, wszystko jest w porządku, mam na myśli poprawną sumę wysyłki, podatku i całkowitą kwotę… ale gdy próbujemy wysłać ponownie e-mail do klienta poprzez link „Wyślij ponownie rachunek do klienta” w sekcji administratora, wysyłka jest obliczana bez dodatkowej opłaty, a cena całkowita jest obliczana bez podatku…

After quick search I find out that this mails are send by different functions in (transaction_result_functions.php, ajax-and-init.php), so lets find and fix bug in ajax-and-init.php file…

Po szybkim przeszukaniu znalazłem że wiadomości te są wysyłane przez różne funkcje w (transaction_result_functions.php, ajax-and-init.php), więc znajdźmy i naprawmy błąd w pliku ajax-and-init.php…

SOLUTION / ROZWIĄZANIE

1. Open file / Otwórz plik – „wpsc-admin/ajax-and-init.php”

2. About line 1060 replace below code / Około linii 1060 zamień poniższy kod :

				$shipping = nzshpcrt_determine_item_shipping($row['prodid'], $row['quantity'], $shipping_country);
				if (isset($_SESSION['quote_shipping'])){
					$shipping = $_SESSION['quote_shipping'];
				}

With / Z :

        $shipping = $row['pnp'];

3. About line 1140 replace below code / Około linii 1140 zamień poniższy kod :

				$total = (($total+$total_shipping) - $purchase_log['discount_value']);

With / Z :

        $total = $purchase_log['totalprice'];

4. Save and upload new file / Zapisz i wgraj nowy plik.

[fix] WP e-Commerce 3.7.5.3 (ptag Warning: implode error)

Problem with tags which doesnt exist (returned 0 results)…
as You may see by search results from google its quite popular problem (almost 600 error pages)
Update: 1 month gone and google return already 1300 error pages ;P

Problem z tagami które nie istnieją (zwracają 0 wyników)…
jak możesz zauważyć po wynikach wyszukiwania w google, jest to dość popularny problem (prawie 600 stron z błędami)

Aktualizacja: minął 1 miesiąc i google zwraca 1300 stron z błędami ;P

Link: http://tinyurl.com/yfkyzcq

Error code:

Warning: implode() [function.implode]: Invalid arguments passed in /home/xxxxxx/public_html/wp-content/plugins/wp-e-commerce/wpsc-includes/wpsc_query.php on line 1316

I solved this problem by adding one more „if” which checks „$product_ids” is null or not (in file wpsc_query.php around line 1316)… after this small modification tags working fine and there is any more errors 😉
Rozwiązałem ten problem poprzez dodanie jednego „if” które sprawdza czy „$product_ids” jest puste czy nie (w pliku wpsc_query.php około linii 1316)… po tej małej modyfikacji tagi działają poprawnie i nie ma więcej błędów 😉

Code below…
Kod poniżej…

Replace (around line 1316 in wpsc_query.php)
Zamień (około linii 1316 w wpsc_query.php)

$product_id = implode(",",$product_ids);
 
$sql = "SELECT * FROM ".WPSC_TABLE_PRODUCT_LIST." WHERE id IN (".$product_id.") AND publish IN('1') AND active IN('1')"; //Transom - added publish & active

With
Z

if($product_ids != null) {
$product_id = implode(",",$product_ids);
 
$sql = "SELECT * FROM ".WPSC_TABLE_PRODUCT_LIST." WHERE id IN (".$product_id.") AND publish IN('1') AND active IN('1')"; //Transom - added publish & active
}

If You know better solution, please let me know.
Jeśli znasz lepsze rozwiązanie, daj mi znać.

Update:
In version 3.7.6.x still exist this problem, the only one difference in this solution is changed line number to 1521.
W wersji 3.7.6.x wciąż istnieje ten problem, jedyna różnica w tym rozwiązaniu to zmieniony numer linii na 1521.

Bramka płatności DotPay do WP e-Commerce dostępna tutaj.

WP Sociable – Spolszczenie, Polski plik językowy (Polish lang)

Podczas wykonywania ostatnio tłumaczenia do komercyjnego szablonu „ClassiPress” okazało się że zawiera on dodatkowe wtyczki które także nie posiadają polskiego tłumaczenia… na pierwszy ogień poszła wtyczka „Sociable„…

sociable-pl_PL.mo sociable-pl_PL.po polish lang language file translation
spolszczenie polski plik językowy tłumaczenie

Plik językowy został przetłumaczony w 100%,
choć nie twierdzę że jest bezbłędny i nie wymaga poprawek.

Czym jest wtyczka „Sociable„?
W skrócie dodaje dobrze nam wszystkim znany pasek z stronami do przechowywania wartościowych linków (Bookmarks’ami), np. dodaje url do Facebook, Google Bookmarks, Gwar, Wykop, Twitter itd.

Wygląda to mniej więcej tak:

Sociable Screenshot

Sociable Screenshot

Tłumaczenie było wykonane do wersji 3.5.2 wtyczki Sociable

Pobierz pliki językowe: sociable-pl_PL.rar

Pobierz pełną wersję wtyczki z drobnymi modyfikacjami: sociable.3.5.2_PL.rar

Jakieś pytania? Potrzebujesz pomocy? Pisz!
W dziale „Kontakt” znajdziesz maila;)