Jump to content



Photo
- - - - -

OSCOM v3.0 Framework Optimized For PHP v5.3


  • Please log in to reply
108 replies to this topic

#21   Pronux

Pronux
  • Members
  • 98 posts
  • Real Name:Pronux
  • Gender:Male
  • Location:Switzerland

Posted 26 June 2010 - 00:03

Since he has changed the design of his blog today, I think he's alive -> www.shinyredapples.com :-)
We should put a GPS on him, he's to important to get lost ;-)

Serious: I fully understand that OSCOM 3.0 need time to get stable, but I can't understand why there are no new releases of osCommerce 2.2 ...
Specialist in end-to-end integration between osCommerce and Microsoft Dynamics NAV ERP System
About Pronux | Pronux Contributions and Add-Ons

#22   burt

burt

    Vanquisher of Demons

  • Community Team
  • 9,989 posts
  • Real Name:G Burton
  • Gender:Male
  • Location:UK/DEV/on

Posted 26 June 2010 - 11:24

2.2 is being worked on for an upcoming final release;
http://github.com/ha.../commits/master

Though I must say that some of the stuff being added is completely pointless, eg;
http://github.com/ha...4f457ff51f5cea0
IF YOU MAKE A POST REQUESTING HELP...please state the exact version of osCommerce that you are using. THANKS
 
Big Bang Templates for 2.3 osCommerce - 2.3.1 > 2.3.4 - Buy One, Get One Free
 
--
Making your osCommerce better, one module at a time - get in touch.

#23   Harald Ponce de Leon

Harald Ponce de Leon

    Healthy Giraffe

  • Core Team
  • 4,893 posts
  • Real Name:Harald Ponce de Leon
  • Gender:Male
  • Location:Solingen, Germany

Posted 26 June 2010 - 14:43

Hi All..

I'm here, working hard. Sorry I'm quiet. My next blog posts will be published in the new week :thumbsup:

Kind regards,
Harald Ponce de Leon

#24   MrPhil

MrPhil
  • Members
  • 5,323 posts
  • Real Name:Phil
  • Gender:Male

Posted 30 June 2010 - 17:50

osC needs to do something pretty radical for the non-programmer web admins or lose the mass market race.

Something that often seems to be overlooked is our audience level. Most users of osCommerce are not computer professionals, or even hobbyists. They are (at best) semi-computer-literate small business owners. They have neither the time, the inclination, nor the ability to go diving into code to do even simple things. Just look at the questions that the support boards get over and over. I find it absurd that the 2.2 development stream has been confined to github -- non computer geeks are not going to go there to find the latest and greatest. They demand a "one button" upgrade path that is officially released and supported and doesn't require a CompSci degree to figure out. If osC can offer that, it will be an absolutely killer app!

I won't repeat my rant about adding new features to "Release Candidates", or about dragging the update process out for years (how long has a 2.2 Gold been in the works? 6 or 7 years?). You put out as a final release what you have, on a reasonably regular basis, so that you stay in the public eye. Surely there are enough security patches and bug fixes constantly going into the 2.x stream to support frequent updates? I would not freeze the feature list (go into maintenance mode) until 3.0 goes Gold. Perhaps having more trusted developers would help?

Can that be done (ultra simple system maintenance and upgrade) without losing the flexibility, customability, and extendability that we have come to love? I would be concerned about making a custom tweak directly in the PHP, and then being shut out from automated upgrades from that point forward. Interested parties might look at a CMS such as Drupal, where users are strongly discouraged from touching the core PHP code, and should instead use various "hooks" provided for interfacing with custom code. That does seem quite complicated, inflexible to an extent, and probably exacts a performance penalty. Is there a happy medium, where non computer people can successfully upgrade and add features without touching code, and is guaranteed to work no matter what previous upgrades and new features have been added? How simple can you make the process, without shutting out the people who want to do new things with the base code?

#25   Harald Ponce de Leon

Harald Ponce de Leon

    Healthy Giraffe

  • Core Team
  • 4,893 posts
  • Real Name:Harald Ponce de Leon
  • Gender:Male
  • Location:Solingen, Germany

Posted 30 June 2010 - 19:28

Hi Phil..

You're right, performance, features, and flexibility need to be rightly balanced. Our focus with v3.0 is to provide a solid foundation for the community to build great stuff onto and to optimize the balance with releases afterwards.

An easy upgrade path for v2.2 will never exist, and is a reason why v3.0 is a rewrite to make such a thing possible.

Kind regards,
Harald Ponce de Leon

#26   Pronux

Pronux
  • Members
  • 98 posts
  • Real Name:Pronux
  • Gender:Male
  • Location:Switzerland

Posted 08 July 2010 - 13:13

Hi Harald

Thanks for the update. I've a short question about your blog post from today: Does this mean OSCOM 3.0 will have by default URL's like:

www.myshop.com/index.php?Shop&Products&oscommerce-tshirt

and not like

www.myshop.com/t-shirts/summer/nerds/oscommerce

?

Edited by Pronux, 08 July 2010 - 13:21.

Specialist in end-to-end integration between osCommerce and Microsoft Dynamics NAV ERP System
About Pronux | Pronux Contributions and Add-Ons

#27   Harald Ponce de Leon

Harald Ponce de Leon

    Healthy Giraffe

  • Core Team
  • 4,893 posts
  • Real Name:Harald Ponce de Leon
  • Gender:Male
  • Location:Solingen, Germany

Posted 08 July 2010 - 13:59

Hi..

The default Site does not need to be in the page request, so if "Shop" is the default Site (by default it is), the page request will be:

www.example.com/index.php?Products&oscommerce-tshirt

"index.php" is the bootstrap file so with htaccess adjustments it's possible to have:

www.example.com/Products&oscommerce-tshirt

And finally, enabling SEFU will make the page request:

www.example.com/Products/oscommerce-tshirt

Kind regards,

Edited by Harald Ponce de Leon, 08 July 2010 - 14:00.

Harald Ponce de Leon

#28   Pronux

Pronux
  • Members
  • 98 posts
  • Real Name:Pronux
  • Gender:Male
  • Location:Switzerland

Posted 09 July 2010 - 00:23

Thanks for the infos, very interesting.

And finally, enabling SEFU will make the page request:
www.example.com/Products/oscommerce-tshirt


Will SEFU (URL Rewriting) be a built-in feature of v3 or does it need an additional contribution to enable it?
Specialist in end-to-end integration between osCommerce and Microsoft Dynamics NAV ERP System
About Pronux | Pronux Contributions and Add-Ons

#29   totalnumpty

totalnumpty
  • Members
  • 243 posts
  • Real Name:Gaz
  • Gender:Male
  • Location:U.K.

Posted 09 July 2010 - 02:14

Hi Harald

Just missed earlier that the new v3.0 is going to be PHP 5.3 dependent - i.e. will not run on anything less than 5.3

I think you need to put out a pretty urgent call to the entire osC user base to start hassling their hosting companies. I had a trawl earlier after realising this requirement - none of my current hosts are on 5.3, they're all on 5.2.x - so I then had a hunt around some of the big name hosting companies that I currently don't have accounts with - again, none of them were on 5.3 or higher.

This will be a major support overload for the osC team and the forums - there is going to be so much of the script broken by laggard hosting companies that this needs to become a global pressure movement from site owners and developers.

I know that self host dev environments such as WAMP and XAMP run 5.3 - which is why "obscure" support tickets are kicking up throughout the open source world - devs are building in features such as the new DateTime PHP class (awesome and long overdue) but the hosts cannot support it.

Please perform some form of broadcast on this - let's start building the pressure on the hosting companies now, so they are ready for osC 3.0 when it goes RC or Gold.

Gaz
Wearing a seatbelt prevents head injuries when the computer crashes - - - Yeah Right!!! - not in this office.

#30   Harald Ponce de Leon

Harald Ponce de Leon

    Healthy Giraffe

  • Core Team
  • 4,893 posts
  • Real Name:Harald Ponce de Leon
  • Gender:Male
  • Location:Solingen, Germany

Posted 09 July 2010 - 09:03

Hi..

Will SEFU (URL Rewriting) be a built-in feature of v3 or does it need an additional contribution to enable it?


It's part of the core framework.

Kind regards,
Harald Ponce de Leon

#31   Harald Ponce de Leon

Harald Ponce de Leon

    Healthy Giraffe

  • Core Team
  • 4,893 posts
  • Real Name:Harald Ponce de Leon
  • Gender:Male
  • Location:Solingen, Germany

Posted 09 July 2010 - 09:06

Hi Gaz..

Please perform some form of broadcast on this - let's start building the pressure on the hosting companies now, so they are ready for osC 3.0 when it goes RC or Gold.


Thanks for the feedback. We will look into it as soon as a release date for v3.0 can be announced.

Kind regards,
Harald Ponce de Leon

#32   homewetbar

homewetbar
  • Members
  • 706 posts
  • Real Name:Keith W.
  • Location:USA

Posted 09 July 2010 - 15:07

Great to hear the 3.0 project is alive again! I'm really looking forward to seeing the advances you have made since v2.2.

Question about the url structure you were discussing yesterday, you did not say what the products name was, so I do not fully understand how the url will be structured. I assume proper url SEO will be built into the core of v3.0 as url SEO is a must and very common today.


As I understand it, a proper SEO url for a products such as "Bright Orange Shirt in Large" would be:

www.yoursite.com/bright-orange-shirt-in-large.html
OR
www.yoursite.com/bright-orange-shirt-in-large

It's unclear from your example, (A) will the SEFU create urls such as this, and (/cool.gif' class='bbc_emoticon' alt='B)' /> will the "oscommerce" be appended to every url? If (/cool.gif' class='bbc_emoticon' alt='B)' /> is true, I would really hope the oscommerce team would reconsider, as having oscommerce as the first keyword of each SEFU will severely hurt keyword ranking for urls, as the first and last words tend to carry a lot of weight on search engines.

Further, it would also be great if the SEFU url was configurable to filter out short words like a, an, the, or words less than say 3 characters so the url was not cluttered up with words that had no SEO value or if you could enter your own SEO url if you so chose to for individual products.

Thanks Harald!
Most Valuable OsCommerce Contributions:
Also Purchased (AP) Preselection (cuts this resource hogging query down to nothing) -- Contribution 3294
FedEx Automated Labels -- Contribution 2244
RMA Returns system -- Contribution 1136
Sort Products By Dropdown -- Contribution 4312
Ultimate SEO URLs -- Contribution 2823
Credit Class & Gift Voucher -- Contribution 282
Cross-Sell -- Contribution 5347

#33   MrPhil

MrPhil
  • Members
  • 5,323 posts
  • Real Name:Phil
  • Gender:Male

Posted 09 July 2010 - 17:22

Just missed earlier that the new v3.0 is going to be PHP 5.3 dependent - i.e. will not run on anything less than 5.3

Uh, is it using PHP 5.3-only features, and thus requires 5.3 or higher, or is it 5.3-compatible, with no deprecated functions, but will work on earlier PHP 5.x versions? No problem if PHP 4 and earlier aren't supported (no one should be using them anymore), but it would be a tremendous hassle for many people if it didn't run on PHP 5.0/5.1/5.2! If it's just 5.3 compatible, whatever announcement that led Gaz astray should be reworded. On the other hand, if it's really 5.3 required, something should be done to provide PHP compatibility functions for earlier 5.x levels (or some alternate code, such as for timezone functions).

#34   Harald Ponce de Leon

Harald Ponce de Leon

    Healthy Giraffe

  • Core Team
  • 4,893 posts
  • Real Name:Harald Ponce de Leon
  • Gender:Male
  • Location:Solingen, Germany

Posted 09 July 2010 - 18:25

Hi Keith..

It's unclear from your example, (A) will the SEFU create urls such as this


Product keywords are not generated automatically and can be defined with the product data in the backend. If no product keyword exists then the numeric product ID is used.

(B) will the "oscommerce" be appended to every url?


The installation will be wrapped inside an "oscommerce" directory however the bootstrap index.php, public directory, and "osCommerce/OM" directory can reside anywhere on the server - it is recommended to move the "osCommerce/OM" directory outside of the public_html directory.

The directory structure will look like:

oscommerce/index.php - bootstrap
oscommerce/public - images, stylesheets, javascript, etc..
oscommerce/osCommerce/OM - core framework

Kind regards,
Harald Ponce de Leon

#35   totalnumpty

totalnumpty
  • Members
  • 243 posts
  • Real Name:Gaz
  • Gender:Male
  • Location:U.K.

Posted 09 July 2010 - 18:27

Hi Gaz..



Thanks for the feedback. We will look into it as soon as a release date for v3.0 can be announced.

Kind regards,



Unfortunately Harald, that may be leaving it too late - as you know, for a hosting company to upgrade is not the same as you or I doing it on our personal machines or office networks. They might have 1000's or 10,000's of servers to roll it to, and have to create procedures and validations to ensure all is well etc. One of the reasons the hosting companies are so far behind the developers is to do with resource availability for such a major project.

The sooner this is brought to their attention, the easier it is for them to drip feed resources for the planning stage of such a project. Simply rolling up to them and saying "upgrade to 5.3 NOW or lose all your osC customers" is going to go down like a lead brick in a fish tank.

Alternatively, launch an "osC 3.0 ready" list of hosting companies sub-page here on osc.com and let the community keep it updated with details of which of their hosts are up to date enough to run it - it would also serve as an extra whip to companies not ready, to get ready. Something similar needs done regarding which companies are/are not SSL ready too - there's a huge number of hosting services that make SSL impossible (or claim it is) due to their configurations - especially in the shared hosting arena.

Gaz
Wearing a seatbelt prevents head injuries when the computer crashes - - - Yeah Right!!! - not in this office.

#36   Harald Ponce de Leon

Harald Ponce de Leon

    Healthy Giraffe

  • Core Team
  • 4,893 posts
  • Real Name:Harald Ponce de Leon
  • Gender:Male
  • Location:Solingen, Germany

Posted 09 July 2010 - 18:29

Hi Phil..

Uh, is it using PHP 5.3-only features, and thus requires 5.3 or higher, or is it 5.3-compatible, with no deprecated functions, but will work on earlier PHP 5.x versions?


OSCOM v3.0 is developed utilizing PHP v5.3 features (eg, namespaces) with the minimum requirement being PHP v5.3.0. It will not work on PHP v5.2 or PHP v4.x.

This is the way forward for us.

Kind regards,
Harald Ponce de Leon

#37   totalnumpty

totalnumpty
  • Members
  • 243 posts
  • Real Name:Gaz
  • Gender:Male
  • Location:U.K.

Posted 09 July 2010 - 19:00

Hi Keith..



Product keywords are not generated automatically and can be defined with the product data in the backend. If no product keyword exists then the numeric product ID is used.


This is confusing - does this mean the product title will not be used in the URL, but instead a keyword assigned to the product?
If so, can that keyword be a "key phrase"?

This could cause major problems with Google and "duplicate content" issues in URLs - think of the variations on a product

e.g.
T-shirt
T-shirt Red
T-shirt Red size L
T-shirt Red size L Ladies
T-shirt Red size L Ladies Adidas
T-shirt Red size L Ladies Adidas Olympic Logo
etc

That's why we have product names/titles - to take care of all the variations for similar products and use them as unique identifiers.
Simply using a key word as the URL uniquifier is not going to work other than in the antique collectibles world, and probably not even there either - how many different Chippendale chairs were ever made?

If you're meaning to use something like the ISBN number of a book, or the merchant's UPI stock code, then be prepared for osC based sites to vanish from Google search results too, and the actual selling side of the community to be howling for your head on a plate. Unless the search engine companies have told you something they haven't said to the rest of us, then please go with the ecommerce standard URL format of domain/product-title or domain/category/product-name - otherwise all us merchants are sunk.


The installation will be wrapped inside an "oscommerce" directory however the bootstrap index.php, public directory, and "osCommerce/OM" directory can reside anywhere on the server - it is recommended to move the "osCommerce/OM" directory outside of the public_html directory.

The directory structure will look like:

oscommerce/index.php - bootstrap
oscommerce/public - images, stylesheets, javascript, etc..
oscommerce/osCommerce/OM - core framework

Kind regards,


Can the oscommerce/ be renamed as per current practice?
I understand and applaud the obfuscation of the osCommerce/OM framework location, but seek reassurance on this point that years of inbound link building can be retained if an osC 2.x to osC 3.x upgrade is performed

Thanks
Gaz
Wearing a seatbelt prevents head injuries when the computer crashes - - - Yeah Right!!! - not in this office.

#38   Harald Ponce de Leon

Harald Ponce de Leon

    Healthy Giraffe

  • Core Team
  • 4,893 posts
  • Real Name:Harald Ponce de Leon
  • Gender:Male
  • Location:Solingen, Germany

Posted 09 July 2010 - 20:42

Hi Gaz..

It's entirely your choice as to how the product keyword should be set. It must obviously be unique so the right product information is retrieved.

The bootstrap index.php and public directory can be placed anywhere in the public_html directory; in the root path or in a subdirectory. Public access to the "osCommerce/OM" framework directory is not needed and can be placed outside the public_html directory.

Kind regards,
Harald Ponce de Leon

#39   totalnumpty

totalnumpty
  • Members
  • 243 posts
  • Real Name:Gaz
  • Gender:Male
  • Location:U.K.

Posted 10 July 2010 - 01:19

Thanks Harald

So, in essence, what you mean here is that the term "keyword" is in effect a user defined variable and could be a traditional product title, item ID (such as ISBN or UPI), or a site page ID etc? And that what you have done is extended the current (2.2 RCx) function of using either the osC product_ID or item title?

Hoping I've got that right?

Re the paths - with the new system, do you envisage it allowing WordPress style folder structuring such as -
/httpdocs/bootstrap index.php
/httpdocs/store/public directory content
and such similar arrangements that allow the site root to remain relatively empty of files (even if it has a large folder list) - I find such arrangements do tend to reduce hacking by unauthorised persons (WordPress got really bad with it late-2008/early-2009 until I implemented that system on my sites).

One other query along this line (a pseudo feature request) is an easy way to have an external point of display for products, using simply thumbnail, title, price, with an ordering choice of newest / specials / random / category - rather than having to implement plugins and hacks to extract such data into pages of other scripts (I like to have a small random display in blog sidebars etc).

Potential here is that I'm thinking of something like a universal widget or mini-grid display. Not sure what terminology you'd give it (I have a habit of naming things to suit how I think - LOL - complete with appended expletives if they're being a pig to implement)).

Have to admit, I'm looking forward to 3.0 going RC and Gold - forgotten if you mentioned if there'd be an auto upgrade path between those?

Gaz
Wearing a seatbelt prevents head injuries when the computer crashes - - - Yeah Right!!! - not in this office.

#40   Harald Ponce de Leon

Harald Ponce de Leon

    Healthy Giraffe

  • Core Team
  • 4,893 posts
  • Real Name:Harald Ponce de Leon
  • Gender:Male
  • Location:Solingen, Germany

Posted 10 July 2010 - 11:25

Hi Gaz..

1. Yes, the product keyword (item title) works as you described it.

2. Yes, only "index.php" and "public" directory are required to exist somewhere inside the public_html directory.

3. There is some pretty cool ajax functionality in the Admin Site that has been extracted to a new RPC Site. This provides the core functionality to perform ajax requests that the whole framework can use, so the possibility of creating such widgets as modules is already in the framework - it just needs to be taken advantage of :-)

4. A migration path from v2.2 and v3.0alpha5 will be provided after v3.0 has been released.

Kind regards,

Edited by Harald Ponce de Leon, 10 July 2010 - 11:36.

Harald Ponce de Leon