Добавление пользовательской метки в vCard 3.0 с помощью PHP

Я успешно создал vCard с помощью библиотеки vCard для PHP от jeroendesloovere. Но я хочу добавить в это несколько ссылок на социальные профили, как я могу добавить это с помощью заголовков. Как это должно показать

http://faceboook.com/mthebrokenstar
Facebook
http://twitter.com/mthebrokenstar
Twitter

Я могу добавить эту информацию со своего телефона, отредактировав сгенерированную визитку. Я хочу, чтобы он генерировался из PHP. Кроме того, я добавил несколько URL-адресов в vCard, и он не показывает заголовок в Android, но в iPhone он показывает заголовок homepage над URL-адресами. Нравиться

homepage
http://example.com
homepage
http://example.com

Я хочу изменить это название на другое. Вот как я это делаю:

$profile = $this->common->getVcardByUsername($username);
       // define variables
        $vcard = new VCard();
        $firstname = $profile->fname;
        $lastname = $profile->lname;
        $additional = $profile->mname;
        $prefix = '';
        $suffix = '';

        // add personal data
        $vcard->addName($lastname, $firstname, $additional, $prefix, $suffix);

        // add work data
        $vcard->addCompany($profile->company);
        $vcard->addJobtitle($profile->job_title);
        $vcard->addEmail($profile->email,'Personal'); 

        $vcard->addPhoneNumber($profile->mobile, 'Personal');
        $vcard->addPhoneNumber($profile->phone, 'Official');
        $address = $profile->address.','.$profile->address2;
        $vcard->addAddress(null, null, $address, $profile->city,$profile->state, $profile->postal_code,$profile->country);
        //Peronsla Website
        if(isset($profile->website) && $profile->website!=""){
             $vcard->addURL($profile->personal,'Website');
        }

        //social
        if(isset($profile->website) && $profile->facebook!=""){
            $vcard->addURL( 'https://facebook.com/'.$profile->facebook,'Facebook');
        }

        if(isset($profile->twitter) && $profile->twitter!=""){
            $vcard->addURL( 'https://twitter.com/'.$profile->twitter,'Twitter');
        }
        if(isset($profile->pintrest) && $profile->pintrest!="") {
            $vcard->addURL('https://pinterest.com/'.$profile->pintrest ,'Pinterest');
        }
        if(isset($profile->instagram) && $profile->instagram!="") {
             $vcard->addURL( 'https://instagram.com/'.$profile->instagram ,'Instagram');
        }
       if(isset($profile->snapchat) && $profile->snapchat!=""){
         $vcard->addURL('https://snapchat.com/add/'.$profile->snapchat,'Snapchat');
       }

person mrcoder    schedule 06.12.2017    source источник
comment
Можете ли вы показать, как вы генерируете визитку и почему $vcard->addUrl("http://facebook.com", "Facebook") не работает?   -  person Gordon    schedule 06.12.2017
comment
пожалуйста, проверьте мое обновление @Gordon   -  person mrcoder    schedule 06.12.2017
comment
@ManojBist Вы решили это? У меня такая же проблема.   -  person Salman Riyaz    schedule 27.08.2020


Ответы (1)


Я кое-что нашел и думаю, что это может быть полезно кому-нибудь.

$vcard->addURL('https://www.facebook.com/username,'TYPE=Facebook');

Таким образом мы можем сохранить социальные сети с URL-адресом в Vcard.

person Salman Riyaz    schedule 27.08.2020
comment
это работает для вас? на Android и iPhone? - person mrcoder; 30.11.2020
comment
@mrcoder Да, очень .. - person Salman Riyaz; 30.11.2020
comment
Я пробовал ваше предложение несколько раз, но у меня не работает на Android, но да, он работает на iOS. на android он просто показывает web address в качестве заголовка. - person mrcoder; 01.12.2020